Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Макет за задачи по ВКН
- 1. Вход масив от фиксиран брой реални (цели) числа.
- 2. Брой на елементи, изпълняващи просто условие (неравенство).
- 3. Извеждане на индексите на елементи, изпълняващи просто условие (неравенство).
- 4 Извеждане на стойности на елементи, изпълняващи просто условие(неравенство)
- 5. Намиране на min/max/средна стойност/сума на елементите.
- 6. Сортировка /подреждане/ на елементи (метод на пряка селекция).
- */
- #include <iostream>
- using namespace std;
- int main()
- {
- // т. 0 - масив от n елемента, ако работим с 1..n - декларираме n+1 елемента
- const int n = 10;
- int masiv[n + 1]; // float masiv[n+1]; ако трябва да е от дробни числа масива
- // т. 1 - вход на масива (въвеждане)
- for (int i = 1; i <= n; i++)
- {
- cout << "Element " << i << " = ";
- cin >> masiv[i];
- }
- // т. 2 - Брой на елементи, изпълняващи просто условие (неравенство)
- int broj = 0;
- for (int i = 1; i <= n; i++)
- if (masiv[i] <= 10) // условието е по-малко или равни на 10 в случая
- broj++;
- cout << "Broia elementi s tova uslovie e " << broj << endl;
- // т. 3 - Извеждане на индексите на елементи, изпълняващи просто условие(неравенство)
- cout << "Indeksite na elementite s tova uslovie sa: ";
- for (int i = 1; i <= n; i++)
- if (masiv[i] <= 10) // условието е по-малко или равни на 10 в случая
- cout << i << " ";
- cout << endl; // това завършва реда с изброяване на индексите
- // т. 4 - Извеждане на стойности на елементи, изпълняващи просто условие(неравенство)
- cout << "Stoinostite na elementite s tova uslovie sa: ";
- for (int i = 1; i <= n; i++)
- if (masiv[i] <= 10) // условието е по-малко или равни на 10 в случая
- cout << masiv[i] << " ";
- cout << endl; // това завършва реда с извеждане на елементи с условие
- // т. 5 Намиране на min/max/средна стойност/сума на елементите
- // ако масива е от float/double - трябва и min, max, suma да са от същия тип
- int min = masiv[1];
- int max = masiv[1];
- int suma = masiv[1]; // ако сумата е по условие,
- // тр. да е = 0, не на първия,
- // защото той може да не отговори на условието,
- // тогава и цикъла за suma няма да е от 2-рия ел.
- // min/max/сума
- for (int i = 2; i <= n; i++)
- {
- if (masiv[i] < min)
- min = masiv[i];
- if (masiv[i] > max)
- max = masiv[i];
- suma = suma + masiv[i];
- }
- // за средно аритметично сумата се дели на броя (на n).
- // трябва да се внимава да е дробно число - преобразуване до float,
- // ако масива е от тип int - иначе е float sredno = suma / n;
- float sredno = suma / float(n);
- // извеждат се нужните неща
- cout << "Min el. e " << min << ", max el. e " << max;
- cout << " sumata na vsichki el. e " << suma;
- cout << " sredno artimetìchno ot vsichki el. e " << sredno << endl;
- // т.6. Сортировка /подреждане/ на елементи (метод на пряка селекция).
- for (int i = 1; i < n; i++)
- {
- int min_nomer = i;
- for (int j = i + 1; j <= n; j++)
- if (masiv[j] < masiv[min_nomer]) // за намаляващ ред > (макс)
- min_nomer = j;
- swap(masiv[i], masiv[min_nomer]);
- }
- cout << "Sorted: " << endl;
- for (int i = 1; i <= n; i++)
- cout << "Element " << i << " = " << masiv[i] << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement