chislo1 = int(input("Введите число а "))
chislo2 = int(input("Введите число b "))
while chislo1 != 0 and chislo2 != 0:
if chislo1 > chislo2:
chislo1 = chislo1 % chislo2
else:
chislo2 = chislo2 % chislo1
print(chislo1 + chislo2)
Объяснение:
НОД числа:
берутся два числа. большее число = остаток от деления большего на меньшее. Затем опять большее число (может быть уже второе) = остаток от деления большего на меньшее, и так до тех пор, пока одно из них не станет равно 0. И выводится большее число. В случае если числа равны друг другу, находится остаток от деления второго числа на первое: 0, и выводится первое число. Т.е всё работает.
Поделитесь своими знаниями, ответьте на вопрос:
Какие отечественные банки имеют страницы в соцсетях что они вкладывают и почему ОТВЕТЬТЕ СЕЙЧАС А ТО ЧЕРЕЗ ИНЕТ НЕ ПОЛУЧАЕТСЯ
#include <iostream>
#include <cstdlib>
#include <time.h>
using namespace std;
void fk()
{
srand(time(0));
int n;
cout << "n:";
cin >> n;
int A[n][n];
cout << "\n\nMass:\n\n";
for(int i = 0; i<n; i++){
for(int j = 0; j<n; j++){
A[i][j]=rand()%10;
cout << A[i][j] << " ";
}
cout << endl;
}
int sum1 = 0;
int sum2 = 0;
for(int i = 0; i<n; i++){
sum1+=A[i][i];
}
for(int i = 0; i<n; i++){
sum2+=A[n-i-1][i];
}
cout << "\n\nSum1 = " << sum1;
cout << "\nSum2 = " << sum2;
cout << "\n\n";
for(int i = 0; i<n; i++){
for(int j = 0; j<n; j++){
if (A[j][0] > A[j+1][0]){
swap(A[j][0],A[j+1][0]);
}
}
}
cout << "\n\nMass sort:\n\n";
for(int i = 0; i<n; i++){
for(int j = 0; j<n; j++){
cout << A[i][j] << " ";
}
cout << endl;
}
}
int main(){
fk();
return 0;
}