ivanrancev
?>

Задача в Pascal В магазин завезли N одиниць різних товарів по цінам Grn (ціни різні) Яку суму Sum можна отримати, якщо продати всі товари. Всі початкові дані цілі числа Скласти програму з використанням Універсального циклу Зберегти у іменем Market.pas

Информатика

Ответы

Vitalevich

n = int(input()) # получаем кол-во продуктов и записываем в n

a = {} # библиотека для цен

c = {} # библиотека для кол-во продукта

l = [] # массив для всех проданных продуктов

for i1 in range(n): # цикл для заполнения всех массивов

   b = [] # массив b для отделения цены о названия продукта

   b.append(input().split()) # записываем продукт и его цену в массив b

   k = int(b[0][len(b[0])-1]) # записываем в k цену продукта

   v = ''

   for i in range(len(b[0])-1): # при цикла объединяем название в                одну строчку и записываем в v

       v = v + str(b[0][i]) + ' '

   l.append(v) # добавляем название в массив l

   a[v] = k # добавляем цену и продукт в библиотеку a

   c[v] = 0 # добавляем продукт в библиотеку b

for i in range(len(l)): # записываем при цикла кол-во каждого продукта

   c[l[i]] = c[l[i]]+1

print(len(c)) # выводим кол-во продуктов, которые были проданы

for i in a: # при цикла выводим продукт и сколько за него в итоге заплатили

   print(str(i)+str(a[i]*c[i]))

Объяснение

Fetyukov

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

short int year[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

int month = 0, day = 0, daysUntilNewYear = 0;

while (month == 0)

{

 cout << "Введите месяц: ";

 cin >> month;

 if (month < 1 || month > 12)

 {

  month = 0;

  cout << "В году лишь 12 месяцев, повторите ввод" << endl;

 }

}

while (day == 0)

{

 cout << "Введите день: ";

 cin >> day;

 if (day > year[month - 1] || day < 1)

 {

  day = 0;

  cout << "В выбранном месяце " << year[month - 1] << " дней, повторите ввод" << endl;

 }

}

for (int i = month - 1; i < 12; i++)

{

 daysUntilNewYear += year[i];

}

daysUntilNewYear -= day - 1;

cout << "До Нового Года осталось " << daysUntilNewYear << " дней"<< endl;

system("pause");

return 0;

}

Если через case делать, то будет больше кода и он будет менее понятен - смысла в этом нет, поэтому сделал через while.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Задача в Pascal В магазин завезли N одиниць різних товарів по цінам Grn (ціни різні) Яку суму Sum можна отримати, якщо продати всі товари. Всі початкові дані цілі числа Скласти програму з використанням Універсального циклу Зберегти у іменем Market.pas
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Columbia777
ЭдуардовнаКлючников1361
sonicegle
afomin63
Shpunt-86
ipeshindina236
Екатерина15
VASILEVNA
Виктор Попова
Косарев
Surkova_Pavlovna
krasnobaevdj3
Filintver
kolgatin69
xalina85