Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1 lvl
- // Найти количество чисел, которые стоят на четных местах и делятся на три
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10], quantity = 0;
- for (int i = 1; i < 10; i+=2) {
- cin >> m[i];
- if (m[i] % 3 == 0) { quantity++; }
- }
- cout << quantity << endl;
- }
- // 1.Дан массив из 10 целых чисел, найти сумму четных отрицательных элементов массива
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10], amount = 0;
- for (int i = 0; i < 10; i ++) {
- cin >> m[i];
- if ((m[i] < 0)&&(m[i]%2==0)) { amount+=m[i]; }
- }
- cout << amount << endl;
- }
- // 2.Дан массив из 10 целых чисел, найти минимальный из элементов массива с нечетными индексами
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10], min = 0;
- for (int i = 0; i < 10; i += 2) {
- cin >> m[i];
- }
- min = m[0];
- for (int i = 0; i < 10; i += 2) {
- if (m[i] < min) { min = m[i]; }
- }
- cout << min << endl;
- }
- // 3. Дан массив из 10 целых чисел, найти среднее арифметическое всех чётных элементов массива, стоящих на нечётных местах
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10]; float amount = 0, quantity = 0;
- for (int i = 0; i < 10; i += 2) {
- cin >> m[i];
- if (m[i] % 2 == 0) {
- amount += m[i];
- quantity++;
- }
- }
- cout << amount / quantity << endl;
- }
- // 4. Найти два максимальных элемента последовательности из 10 чисел
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10], max1 = 0, max2 = 0;
- for (int i = 0; i < 10; i ++) {
- cin >> m[i];
- }
- max1 = m[0];
- max2 = m[0];
- for (int i = 0; i < 10; i ++) {
- if (m[i] > max1) { max2 = max1; max1 = m[i]; }
- }
- cout << max1 << endl;
- cout << max2 << endl;
- }
- // 5. Дан массив из 10 целых чисел, необходимо определить, сколько среди них чисел, кратных 6. Если таких чисел нет, вывести No
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- int m[10], quantity = 0;
- for (int i = 0; i < 10; i ++) {
- cin >> m[i];
- if (m[i] % 6 == 0) { quantity++; }
- }
- if (quantity != 0) { cout << quantity << endl; }
- else { cout << "No" << endl; }
- }
- // 6. Дан целочисленный массив из 20 элементов, необходимо найти наибольший элемент, дающий при делении на 4 остаток 3. Если таких чисел нет, вывести No
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- float m[10], max; bool exist = 0;
- for (int i = 0; i < 10; i++) {
- cin >> m[i];
- }
- max = m[0];
- for (int i = 0; i < 10; i++){
- if ((m[i] > max) && ((m[i] / 4 == 3) || (m[i] / 4 == -3))) { max = m[i]; exist = 1; }
- }
- if (exist == 1) { cout << max << endl; }
- else { cout << "No" << endl;}
- }
- // 2lvl
- // 1. Найти максимальный элемент численного массива и его индекс (max_num и max_index).
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- float m[20], max_num, max_index;
- for (int i = 0; i < 20; i++) {
- cin >> m[i];
- }
- max_num = m[0];
- max_index = 0;
- for (int i = 0; i < 20; i++) {
- if (max_num < m[i]) { max_num = m[i]; max_index = i+1; }
- }
- cout << "Max = " << max_num << endl;
- cout << "Position = " << max_index << endl;
- }
- // 2. Дан массив из 50 элементов, значения которых формируются функцией random и лежат в диапазоне от -50 до 49 включительно. Требуется из одного массива скопировать в другой массив значения в диапазоне от -5 до 5 включительно и подсчитать их количество.
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main() {
- srand(time(0));
- int m1[50], m2[50], counter = 0;
- for (int i = 0; i < 50; i++) {
- m1[i] = rand() % (49 - (-50) + 1) + (-50);
- }
- for (int i = 0; i < 50; i++) {
- if ((m1[i] >= -5) && (m1[i] <= 5)) { m2[i] = m1[i]; cout << m2[i] << endl; counter++; }
- }
- cout << "Counter:" << counter << endl;
- }
- // 3.В одномерном массиве (заполнение массива случайными числами от -50 до 49) найти сумму отрицательных элементов. Если эта сумма меньше -100, то необходимо прибавить к ней минимальный положительный элемент.
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main() {
- srand(time(0));
- int m[10], sum_of_negative = 0, min_positive;
- for (int i = 0; i < 10; i++) {
- m[i] = rand() % (49 - (-50) + 1) + (-50);
- cout << m[i] << endl;
- }
- for (int i = 0; i < 10; i++) {
- if (m[i] > 0) { min_positive = m[i]; }
- }
- for (int i = 0; i < 10; i++) {
- if ((m[i] < min_positive) && (m[i] > 0)) { min_positive = m[i]; }
- if (m[i] < 0) { sum_of_negative += m[i]; }
- }
- cout << "------------------" << endl;
- cout << "Min positive number:" << min_positive << endl;
- cout << "Sum of negative numbers:" << sum_of_negative << endl;
- if (sum_of_negative < -100) { cout << "Sum + Min:" << min_positive + sum_of_negative << endl; }
- }
- // 4. Дан массив из 10 элементов, поменять местами максимальный и минимальный элементы массива
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main() {
- int m[10], minnumber, maxnumber, replace = 0, minindex = 0, maxindex = 0;
- for (int i = 0; i < 10; i++) {
- cin >> m[i];
- }
- minnumber = m[0];
- maxnumber = m[0];
- for (int i = 0; i < 10; i++) {
- if (minnumber > m[i]) { minnumber = m[i]; minindex = i; }
- else
- if (maxnumber < m[i]) { maxnumber = m[i]; maxindex = i; }
- }
- replace = m[maxindex];
- m[maxindex] = m[minindex];
- m[minindex] = replace;
- cout << "-------------" << endl;
- for (int i = 0; i < 10; i++) {
- cout << m[i] << endl;
- }
- cout << "max index changed from " << minindex << " to " << maxindex << endl;
- cout << "min index changed from " << maxindex << " to " << minindex << endl;
- }
- // 5. Дан массив из 15 целых чисел, заданных рандомно (изучить самостоятельно, как вводить случайные/рандомные числа), определить индексы элементов массива, значение которых лежит в указанном пределе
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main() {
- srand(time(0));
- int m[15], m1[15];
- for (int i = 0; i < 15; i++) { // предел (-1000...1000)
- m[i] = rand() % (3000 - (-3000) + 1) + (-3000);
- cout << m[i] << endl;
- if ((m[i] >= -1000) && (m[i] <= 1000)) {
- m1[i] = i;
- }
- }
- cout << "------------" << endl;
- for (int i = 0; i < 15; i++) {
- if (m1[i] != -858993460) { cout << m1[i] << endl; }
- }
- }
- // 6. Дан массив, содержащий неотрицательные целые числа, не превышающие 10 000.
- //Необходимо вывести: минимальный чётный элемент, если количество чётных элементов не больше, чем нечётных,
- //или минимальный нечётный элемент, если количество нечётных элементов меньше, чем чётных.
- //Например, для массива из шести элементов, равных соответственно 4, 6, 12, 17, 9, 8, ответом будет 9 – наименьшее нечётное число, поскольку нечётных чисел в этом массиве меньше
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- srand(time(0));
- int m[10], sumchet = 0, sumnechet = 0, minchet, minnechet;
- for (int i = 0; i < 10; i++) {
- m[i] = rand() % (10000 - 0 + 1) + 0;
- cout << m[i] << endl;
- }
- minchet = 10001;
- minnechet = 100001;
- for (int i = 0; i < 10; i++) {
- if ((minchet > m[i])&&(m[i]%2==0)) { minchet = m[i]; }
- else
- if ((minnechet > m[i]) && (m[i] % 2 == 1)) { minnechet = m[i]; }
- if (m[i] % 2 == 0) { sumchet++; }
- else
- if (m[i] % 2 == 1) { sumnechet++; }
- }
- cout << "------------" << endl;
- cout << "sumchet:" << sumchet << endl;
- cout << "sumnechet:" << sumnechet << endl;
- if (sumchet < sumnechet) { cout << "Минимальный чётный:" <<minchet << endl; }
- else
- if ((sumnechet < sumchet)&&(minnechet!= 10001)) { cout << "Минимальный нечётный:" <<minnechet << endl; }
- else
- if (sumnechet == sumchet) { cout << "Равны" << endl; }
- }
- // 3 lvl
- // 1. Продукты
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- string products[10], product; int prices[10], numberofproducts; float finalprice = 0, quantity;
- for (int i = 0; i < 10; i++) {
- cin >> products[i];
- cin >> prices[i];
- }
- cout << "Введите количество товаров к покупке" << endl;
- cin >> numberofproducts;
- for (int i = 0; i < numberofproducts; i++) {
- cin >> product;
- cin >> quantity;
- for (int i = 0; i < 10; i++) {
- if (product == products[i]) { finalprice += prices[i] * quantity; }
- }
- }
- cout << "Итоговая цена:" << finalprice << endl;
- }
- // 4. Про клиентов фитнес-центра
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- int N,code, year, month, hours, min_hours = 0, min_year = 0, min_month = 0;
- cout << "Введите кол-во клиентов" << endl;
- cin >> N;
- if (N > 0) {
- for (int i = 0; i < N; i++) {
- cout << "Введите код клиента" << endl;
- cin >> code;
- if ((code >= 10) && (code <= 99)) {
- cout << "Введите год" << endl;
- cin >> year;
- if ((year >= 2000) && (year <= 2010)) {
- cout << "Введите месяц" << endl;
- cin >> month;
- if ((month >= 1) && (month <= 12)) {
- cout << "Введите кол-во часов" << endl;
- cin >> hours;
- if ((hours >= 10) && (hours <= 99)) {
- if ((min_hours < hours) || (hours == min_hours)) { min_hours = hours; min_year = year; min_month = month; }
- }
- else { cout << "Неправильная введенная продолжительность занятий" << endl; }
- }
- else { cout << "Неправильный введенный месяц" << endl; }
- }
- else { cout << "Неправильный введенный год" << endl; }
- }
- else { cout << "Неправильный введенный код" << endl; }
- }
- }
- if ((min_hours != 0) && (min_year != 0) && (min_month != 0)) {
- cout << "------" << endl;
- cout << "Кол-во часов:" <<min_hours << endl;
- cout << "Год:" << min_year << endl;
- cout << "Месяц:" << min_month << endl;
- }
- }
- // 5. 365 дней
- #include <iostream>
- #include <cstdlib>
- #include <iomanip>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- int days, day, month; char dot, plus_or_minus; float temp; int temp_int, months[12] = { 1,2,3,4,5,6,7,8,9,10,11,12 }, del[12] = { 0,0,0,0,0,0,0,0,0,0,0,0 }; float temps[12] = { 0,0,0,0,0,0,0,0,0,0,0,0 };
- cout << "Введите кол-во вводимых дней" << endl; // чтобы не заполнять все 365 дней вручную, а проверить 4-5 дней
- cin >> days;
- for (int i = 0; i < days; i++) {
- cout << "Введите день, месяц в формате (dd.mm)" << endl;
- cin >> day;
- if ((day >= 1) && (day <= 31)) {
- cin >> dot;
- if (dot == '.') {
- cin >> month;
- cout << "Введите температура в формате (+tt.t; t=temperature)" << endl;
- if ((month >= 1) && (month <= 12)) {
- cin >> plus_or_minus;
- if ((plus_or_minus == '-') || (plus_or_minus == '+')) {
- cin >> temp;
- if (plus_or_minus == '-') { temp = temp - (2 * temp); }
- temp_int = temp;
- if ((abs(temp - temp_int) >= 0.0) && (abs(temp - temp_int) <= 0.9)) {
- del[month - 1] += 1;
- temps[month - 1] += temp;
- if (i == days - 1) {
- for (int i = 0; i < 12; i++) {
- if ((abs(temps[i] / del[i]) == 1) || (abs(temps[i] / del[i]) == 0)) { cout << months[i] << " месяц" << " = " << temps[i] / del[i] << endl; } else
- if ((temps[i] != 0) && (del[i] != 0)) {
- cout << "---Результаты----" << endl;
- if ((abs(temps[i] / del[i]) >= 1) && (abs(temps[i] / del[i]) <= 9)) { cout << months[i] << " месяц" << " = " << setprecision(2) << temps[i] / del[i] << endl; }
- else
- if ((abs(temps[i] / del[i]) >= 10) && (abs(temps[i] / del[i]) <= 99)) { cout << months[i] << " месяц" << " = " << setprecision(3) << temps[i] / del[i] << endl; }
- else
- if ((abs(temps[i] / del[i]) >= 100) && (abs(temps[i] / del[i]) <= 999)) { cout << months[i] << " месяц" << " = " << setprecision(4) << temps[i] / del[i] << endl; }
- else
- {
- cout << months[i] << " месяц" << " = " << temps[i] / del[i] << endl;
- }
- }
- }
- }
- }
- else { cout << "Введенная температура должна содержать 1 знак после запятой (e.g. 31 --> 31.0)" << endl; }
- }
- else { cout << "Неправильно введен знак" << endl; }
- }
- else { cout << "Неправильно введен месяц" << endl; }
- }
- else { cout << "Не была поставлена точка после дня" << endl; }
- }
- else { cout << "Неправильно введен день" << endl; }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement