В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История

Модифицированный алгоритм Евклида для вычисления наибольшего общего делителя двух натуральных чисел, формулируется так: нужно заменять большее число на остаток от деления большего на меньшее до тех пор, пока остаток не станет равно нулю; тогда второе число и есть НОД. Напишите программу, которая реализует этот алгоритм.

Входные данные:
Входная строка содержит два числа, разделённые пробелом – a и b .

Выходные данные:
Программа должна вывести в одной строке два числа: сначала наибольший общий делитель двух введённых чисел, а затем – количество шагов цикла, которые были выполнены.

Примеры:

Входные данные:
21 14
Выходные данные:
7 3

Показать ответ
Ответ:
Аропахора
Аропахора
04.04.2020 18:51
import java.util.*;
import java.lang.*;

class {
public static void main(String[] args){

Scanner sc = new Scanner(System.in); // то для ввода

System.out.print("Enter ch: ");
int ch = sc.nextInt();

int size = 0;
int toWil = 1;
int i = 1;

while(toWil == 1){
ch /= (10 * i);
if(ch == 0){
toWil = 0;
}
else{
size++;
};
};

int arr[] = new int[size];
i = 1;

while(toWil == 0){
ch /= (10 * i);
if(ch == 0){
toWil = 1;
}
else{
arr[i - 1] = ch;
};
};

i = 0;

while(toWil == 1){
arr[i] += 4;
if(arr[i] >= 10){
if(i == (size - 1)) {

}
else{
arr[i + 1] += 1;
};
};


};

for(i = size; i >= 1; i++){
System.out.print(arr[i]);
}

}
}
0,0(0 оценок)
Ответ:
szhanibekov
szhanibekov
26.06.2020 05:37
import java.util.*;
import java.lang.*;

class {
public static void main(String[] args){

Scanner sc = new Scanner(System.in);
int a, b, c;

System.out.print("Enter a: "); a = sc.nextInt();
System.out.print("Enter b: "); b = sc.nextInt();
System.out.print("Enter c: "); c = sc.nextInt();

int pol[] = new int[3];
pol[0] = a;
pol[1] = b;
pol[2] = c;

for(int i = 0; i < 3; i++){
if(pol[i] < 0){
pol[i] = 0;
};
};

for(int i = 1; i < 3; i++){
pol[0] += pol[i];
};

System.out.print("sum: " + pol[0]);
}
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота