Всё на pascal abc 1)Напишите программу, которая получает с клавиатуры два натуральных числа и находит их НОД с алгоритма Евклида.
Пример:
Введите два натуральных числа: 21 14
НОД(21,14)=7.
2)Напишите программу, которая получает с клавиатуры два натуральных числа и находит их НОД с алгоритма Евклида. Программа должна подсчитать количество шагов цикла.
3)Напишите программу, которая получает с клавиатуры два натуральных числа и сравнивает количество шагов для вычисления их НОД с «обычного» и модифицированного алгоритмов Евклида.
Пример:
Введите два числа:
1998 2
НОД(1998,2)=2
Обычный алгоритм: 998 шагов
Модифицированный: 1 шагов
1) 1.Системная плата.
2.Блок питания.
3.Центральный процессор
4.Оперативная память
5.Видеокарта
6.Сетевая карта
7. Звуковая карта
8.Жесткий диск
2) Материнская плата - это основная плата компьютера. На ней расположены столы и разъёмы для подключения комплектующих ПК, таких как: видеокарты, оперативная память, процессор, накопители данных, а также периферии.
3) 1.ОЗУ
2.Видеокарта
3. Жёсткий диск
4.Питание
5.Дополнительная устройства
6.PS/2. ...
7.COM порт
4) a) хранения информации
b) ввод и выдачу информации
c) обработку информацию
d) управление работой ЭВМ по заданной программе
li = []
elements = 1
negative_index = 0
positive_index = 0
print("Введите 0 что бы остановить ввод")
while elements != 0:
elements = int(input("Введите элементы списка\n"))
li.append(elements)
li2 = li[:]
li2.sort()
length = li.__len__()
print(li)
for i in range(0, length-1):
for j in range(length-1, 1, -1):
if li2[i] * (-1) == li2[j]:
for k in range(0, length-1):
if li2[i] == li[k]:
negative_index = k
if li2[j] == li[k]:
positive_index = k
if negative_index < positive_index:
print("Индекс противоположного числа(1) ->", negative_index)
print("Индекс противоположного числа(2) ->", positive_index)
elif negative_index == positive_index == 0:
exit(0)
else:
print("Индекс противоположного числа(1) ->", positive_index)
print("Индекс противоположного числа(2) ->", negative_index)
P.S
Код не идеальный, но задачу выполняет