Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Одномерные массивы.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
152.83 Кб
Скачать

10.Using namespace std;

11.  

12.Int main()

13.{

14.   //объявляем необходимые переменные

15.   const int size = 15;

16.   int massiv[size];

17.   int sumChet = 0, sumNechet = 0, sum = 0, proizv1 = 1, proizv2 = 1;

18.     

19.   //задаем начало отчета для рандомизатора rand()

20.   srand(time(NULL));

21.     

22.   //наполняем массив случайными величинами

23.   for(int i = 0; i < size; i++)

24.      massiv[i] = 1 + rand() % 200;

25.        

26.   //выводим содержимое массива на экран

27.   printArray(massiv, size);

28.     

29.   //выполняем необходимые подсчеты в цикле

30.   for(int i = 0; i < size; i++)

31.   {

32.      if(massiv[i] % 2 == 0)

33.         sumChet += massiv[i];

34.           

35.      if(massiv[i] % 2 != 0)

36.         sumNechet += massiv[i];

37.           

38.      sum += massiv[i];

39.        

40.      if(massiv[i] < 50)

41.         proizv1 *= massiv[i];

42.           

43.      if(i == 2 || i == 7)

44.         proizv2 *= massiv[i];

45.   }

46.     

47.   //выводим результаты работы программы

48.   cout << "\nSumma chetnih: " << sumChet << endl;

49.   cout << "Summa nechetnih: " << sumNechet << endl;

50.   cout << "Summa vseh: " << sum << endl;

51.   cout << "Proizvedeniye elementov do 50: " << proizv1 << endl;

52.   cout << "Proizvedeniye elementov ot 0 do 4: " << proizv2 << endl;

53.     

54. Return 0;

55.}

56.  

57.//функция вывода массива на экран

58.void printArray(int a[], const int s)

59.{

60.   for(int k = 0; k < s; k++)

61.      cout << a[k] << " ";

62.        

63.   cout << endl;

64.}

Результат работы программы будет таким

Одномерные массивы - задача № 2

Используйте одномерный массив для решения следующей задачи. Компания платит своим продавцам на комиссионной основе. Продавцы получают 200 долларов в неделю плюс 9 процентов от валовой продажи за эту неделю. Например, продавец, валовая продажа которого за неделю составила 5000 долларов, получает 200 долларов плюс 9 процентов от 5000 долларов, или всего 650 долларов. Напишите программу (используя массив счетчиков), которая определяет, сколько продавцов получили заработную плату в каждом из следующих диапазонов (примем допущение, что зарплата каждого продавца округляется до целого значения):

  1. $200 - $299

  2. $300 - $399

  3. $400 - $499

  4. $500 - $599

  5. $600 - $699

  6. $700 - $799

  7. $800 - $899

  8. $900 - $999

  9. $1000 и более.

Код программы:

01.//Программа определяет количество продавцов,

02.//получивших заработную плату из определенного интервала

03.  

04.#include <iostream>

05.  

06.//определяем прототипы функций

07.void intervals();

08.void printArray(int[], int);

09.  

10.Using namespace std;

11.  

12.Int main()

13.{

14.   //определяем константное число, определяющее размер массива

15.   const int size = 9;

16.   //объявляем массив, инициализируем его нулями

17.   //totalSale - будет запоминать валовую продажу служащего

18.   //general - будет запоминать заработную плату служащего

19.   int array[size] = {0}, totalSale, general;

20.     

21.   //выводим интервалы заработков служащих для наглядности

22.   intervals();

23.     

24.   //запрашиваем валовую продажу и сохраняем значение

25.   cout << "Total sale (exit -1): " << endl;

26.   cin >> totalSale;

27.     

28.   //в цикле запрашиваем количества валовых продаж служащих

29.   while(totalSale != -1)

30.   {

31.      //подсчитываем заработную плату служащего

32.      general = 200 + (totalSale * 9 / 100);

33.        

34.      //организуем подсчет, используя счетчики

35.      if(general >= 200 && general <= 299)

36.         ++array[0];

37.      else if(general >= 300 && general <= 399)

38.         ++array[1];

39.      else if(general >= 400 && general <= 499)

40.         ++array[2];

41.      else if(general >= 500 && general <= 599)

42.         ++array[3];

43.      else if(general >= 600 && general <= 699)

44.         ++array[4];

45.      else if(general >= 700 && general <= 799)

46.         ++array[5];

47.      else if(general >= 800 && general <= 899)

48.         ++array[6];

49.      else if(general >= 900 && general <= 999)

50.         ++array[7];

51.      else if(general >= 1000)

52.         ++array[8];

53.           

54.      //запрашиваем валовую продажу и сохраняем значение

55.      cout << "Total sale (exit -1): " << endl;

56.      cin >> totalSale;

57.   }

58.  

59.   printArray(array, size);

60.