Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
5.7 kB
5
Indexable
Never
#include<iostream>
using namespace std;
void Task_1();
void Task_2();
void Task_3();
void Task_4();
void Task_5();
void Task_6();
void Task_7();
void Task_8();
void Task_9();
void Task_10();
int main(){
	setlocale(LC_ALL, "rus");
	Task_8();

}	
void Task_1() {
	cout << "Известно, что любое натуральное число N можно представить в виде суммы не более чем четырёх квадратов натуральных чисел или, что то же самое, в виде суммы четырёх квадратов неотрицательных целых чисел (теорема Лагранжа). Дано натуральное число n, указать такие неотрицательные целые x,y,z,t, что n=x2+y2+z2+t2." << endl;

	int x = 0, y = 0, z = 0, t = 0, n;
	cout << "Введите n" << endl;
	cin >> n;
	for (x; x * x <= n; x++) {
		for (y = 0; y * y <= n; y++) {
			for (z = 0; z * z <= n; z++) {
				for (t = 0; t * t <= n; t++) {
					if (x * x + y * y + z * z + t * t == n) {
						cout << x << " " << y << " " << z << " " << t << " " << endl;
						exit(5);// exit?
					}

				}

			}

		}

	}

}
void Task_2() {


	cout << "Найти n первых чисел Фибоначчи." << endl;
	int a1, a2, a3, i,n;
	cout << "Введите n" << endl;
	cin >> n;
	a1 = 1;
	a2 = 1;

	for (i = 1; i <= n; i++) {
		cout<<a1<<" ";
		a3 = a1 + a2;
		a1 = a2;
		a2 = a3;

	}
}
void Task_3() {
	cout << "Дано число А. Проверить – это число Фибоначчи или нет." << endl;
	int a1, a2, a3, i, A,c=-6;
	cout << "Введите A" << endl;
	cin >> A;
	a1 = 1;
	a2 = 1;

	for (i = 1; a1 <= A; i++) {
		if (a1 == A) {
			cout << A << "- принадлежит числу Фибоначчи";
			c = 0;
			break;
		}
		
		a3 = a1 + a2;
		a1 = a2;
		a2 = a3;

	}
	if (c == -6) {
		cout << A << "- не принадлежит числу Фибоначчи";
	}


}
void Task_4() {
	cout << " Дано натуральное число N, найти наиболее часто встречающуюся цифру" << endl;
	int N, c, b, a, max,k;
	cout << "Введите N"<<endl;
	cin >> N;
	a = -1;
	max = 0;
	for (N; N > 0; N /= 10) {
		b = N%10;
		c = N;
		k = 0;
		for (c; c > 0; c /= 10) {
			if (c % 10 == b) {
				k++;
			}
		}
		if (max < k) {
			max = k;
				a = b;
		}
	}
	cout << "Цифра:" << a << " Количество повторений: " << max;

}
void Task_5() {
	int a, b, n, m, k1, s1, k2, s2;
	cout << "Два натуральных числа называют дружественными, если каждое из них равно сумме всех делителей другого, кроме самого этого числа. Найдите все пары дружественных чисел на отрезке [a,b]." << endl;
	cout << "Введите а и b" << endl;
	cin >> a >> b;
	n = a;
	for (n; n <= b; n++) {
		
		for (m=a+1; m <= b; m++) {
			
			s1 = 1;
			for (k1 = 2; k1 <= n / 2; k1++) {

				if (n % k1 == 0) {
					s1 += k1;
				}
			}
			s2 = 1;
			for (k2 = 2; k2 <= m/2; k2++) {
				if (m % k2 == 0) {
					s2 += k2;
				}
			}
			if (s1 == m && s2 == n) {
				cout << n << " " << m << endl;
			}

		}




	}

}
void Task_6()
{
	cout << "Дано число n. Проверить, простое ли оно" << endl;
	cout << "Введите n: ";
	int n;
	cin >> n;
	int k = 2, c = 0;
	while (k <= n / 2)
	{
		if (n % k == 0)
		{
			c += 1;
		}
		k++;
	}
	if (c == 0)
	{
		cout << "Число " << n << " простое" << endl;
	}
	else
	{
		cout << "Число " << n << " не простое" << endl;
	}
}
void Task_7()
{
	cout << "Дано натуральное число N. Найти сумму его цифр." << endl;
	cout << "Введите N: ";
	int N, sum = 0;
	cin >> N;
	while (N > 0)
	{
		sum = sum + N % 10;
		N = N / 10;
	}
	cout << "Сумма цифр равна " << sum << endl;
}
void Task_8()
{
	cout << "Дано натуральное число N. Определить, палиндром оно или нет. Палиндром – число, которое читается одинаково справа на лево и слева на право, например 12321, или 2332." << endl;
	cout << "Введите N: ";
	int N;
	cin >> N;
	int d = N, s = 0;
	while (d > 0)
	{
		s = s * 10 + d % 10;
		d = d / 10;
	}
	if (s == N)
	{
		cout << "Это палиндром" << endl;
	}
	else
	{
		cout << "Это не палиндром" << endl;
	}
}
void Task_9()
{
	cout << "Найти сумму чисел Фибоначчи на [a,b]." << endl;
	int a, b, c;
	int f1 = 0, f2 = 1, sum = 0;
	cout << "Введите a, b:" << endl;
	cin >> a >> b;
	while (f2 < a)
	{
		c = f1 + f2;
		f1 = f2;
		f2 = c;
	}
	while (f2 <= b)
	{
		sum = sum + f2;
		c = f1 + f2;
		f1 = f2;
		f2 = c;
	}
	cout << "Сумма равна " << sum << endl;
}
void Task_10()
{
	cout << "Число называют совершенным, если оно равно сумме своих делителей, кроме себя самого. Найти все такие числа на [a,b]" << endl;
	cout << "Введите a, b:" << endl;
	int a, b;
	cin >> a >> b;
	while (a < b)
	{
		int s = 0, i = 1;
		while (i <= a / 2)
		{
			if (a % i == 0)
			{
				s += i;
			}
			i++;
		}
		if (s == a)
		{
			cout << a << " ";
		}
		a++;
	}
	cout << endl;
}