Часть 1. Развевляющиеся программы
Задание 1.1. Написать программу для вычисления значения функции F. Учитывать область определения функции F. Значения действительных величин a, b, c, x вводить с клавиатуры.
#include using namespace std; int main () { int result; setlocale(0,""); double a,b,c,x; cout << "Введите значения А:"; cin >> a; cout << " В:"; cin >> b; cout << " С:"; cin >> c; cout << " Х:"; cin >> x; if(a < 0 && x != 0) { result = x*(a*x - b*b); } else if( a > 0 && x == 0) { result = x - (a/(x-c)); } else { result = 1 + (x/c); } cout << "F = " << result; return 0; }
Введите значения A:15 B:19 C:6 X:27 F = 5
Задание 1.2. Ввести с клавиатуры трехзначное число и определить:
а) какие из его цифр больше пяти;
б) является ли сумма его цифр четной.
#include using namespace std; int main(){ setlocale(0,""); int k,a,b,c; cout << "Введите 3-х значное число: "; cin >> k; //из 165 выводит число k/100 или k/100%10 = 1, k/10 = 16, k%100 = 65, k%10 = 5, k%1 = 0, k/10%10 = 6, a=k/100%10; // 0xx b=k/10%10; // x0x c=k%10; //xx0 if((a<=5)&&(b<=5)&&(c<=5)){ cout << "Нет значений больше 5"; } if(a>5){ cout << "1-е больше 5 "; } if(b>5){ cout << "2-е больше 5 "; } if(c>5){ cout << "3-е больше 5 "; } if(((a+b+c)%2) == 0){ cout << "сумма цифр - четное "; } if(((a+b+c)%2) == 1){ cout << "сумма цифр - НЕ четное "; } }
Введите 3-х значное число: 164 2-е больше 5 сумма цифр - НЕ четное
Задание 1.3. Написать программу с использованием оператора switch:
С клавиатуры ввести целое число (3, 4, 5, 6, 7, 8) в зависимости от значения которого на экране вывести название многоугольника, содержащего указанное число сторон, например 3 – треугольник. Предусмотреть вывод сообщения об ошибке, если введенное число не соответствует заданному диапазону.
#include using namespace std; int main(){ setlocale(0,""); int ugl; cout<<"Число углов = "; cin>>ugl; switch (ugl) { case 3: cout<<"Треугольник "; break; case 4: cout<<"4-х угольник "; break; case 5: cout<<"5-ти угольник "; break; case 6: cout<<"6-ти угольник "; break; case 7: cout<<"7-ми угольник "; break; case 8: cout<<"8-ми угольник "; break; default: cout<<"Упсс! Ошибочка! Нужно вводить числа только = 3, 4, 5, 6, 7, 8 "; } return 0; }
Число углов = 6 6-ти угольник
Часть 2. Циклические программы
Написать программу для вычисления значений f(x). Значения аргумента x вводить с клавиатуры.
#include #include using namespace std; int main(){ setlocale(0,""); double s=0 ,x=0; cout << "Введите значение Х: "; cin>>x; for (int i = 1; i <= 23; i++) { s+=((pow((x/3),2))/((2*i)+1));} cout<
Введите значение Х: 2 0.698141
Часть 3. Одномерные массивы
Задание 3.1. Элементы одномерного массива задать счетчиком случайных чисел в диапазоне от a до b. Посчитать значение Х, в котором К+ - кол-во положительных элементов, К- - кол-во отрицательных элементов.
a | b | Х |
-12 | 36 | (k+ + k-)/(k+ * k-) |
#include #include #include using namespace std; int main(){ setlocale(0,""); double plus=0; double min=0; srand(time(NULL)); int massiv[9]; int i; for (i=0;i<10;i++){ massiv[i] = rand()%36+(-12); cout << massiv[i] << " "; if (massiv[i]>=0){ plus++; } if (massiv[i]<0){ min++; } } cout<<" Кол-во положительных элементов: "<
-3 10 -3 16 10 -4 15 9 19 -5 Кол-во положительных элементов: 6 Кол-во отрицательных элементов: 4 Х = 0.416667
Задание 3.2. Элементы массива размерности 15 задать с клавиатуры.
Посчитать среднее арифметическое максимального и минимального из его элементов.
#include using namespace std; int main(){ setlocale(0,""); int i, massiv[15]; cout <<"Введите 15 элементов "; for (i=0;i<15;i++) cin >> massiv[i]; int max = massiv[0]; //max int min = massiv[0]; //min for (i=0;i<15;i++){ if (massiv[i] > max) {//max max = massiv[i];//max }//max if (massiv[i] < min) {//min min = massiv[i];//min }//min } cout<<"MAX: "<< max << " "; cout<<"MIN: "<< min << " "; cout<<"RESULT: "<< (max+min)/2 << " "; }
Введите 15 элементов 3 5 2 7 1 12 9 4 3 17 21 8 11 10 2 MAX: 21 MIN: 1 RESULT: 11
Часть 4. Двумерные массивы
Задание 4.1. Составить программу. В матрице размерности 8x9 определить произведение элементов в каждом втором столбце. Найти минимум среди положительных матриц.
#include #include #include int main() { int Matrix[255][255]; srand(time(NULL)); int min = INT_MAX; for (int i = 0; i < 8; i++) { for (int j = 0; j < 9; j++) { Matrix[i][j] = rand()%5; if (Matrix[i][j] < min && Matrix[i][j] > 0) min = Matrix[i][j]; std::cout << " " << Matrix[i][j]; } std::cout << " "; } int result[5]; for (int i = 0; i < 5; ++i) result[i] = 1; int count = -1; for (int i = 0; i < 8; i+=2) { ++count; for (int j = 0; j < 9; j++) { result[count] *= Matrix[i][j]; } std::cout << " "; } for (int i = 0; i < 5; ++i) std::cout << result[i]<< " "; std::cout << std::endl; std::cout << "Minimum is : " << min; system("pause>>null"); }
0 0 4 3 1 2 2 3 4 2 0 3 4 1 4 3 4 3 4 0 3 2 0 0 4 1 4 2 4 4 0 4 3 2 3 4 2 4 2 4 1 1 0 1 2 2 0 2 0 0 4 1 3 1 0 0 2 4 1 3 2 1 2 3 4 0 3 2 3 4 2 4 0 0 0 0 1 Minimum is : 1