Напишите программу формирования массива размером 5×5. замените в нем нечетные значения элементов на минимальноее значение элементов последней строки выведите на экран исходный и измененный массив
// PascalABC.NET 3.2, сборка 1379 от 21.01.2017 // Внимание! Если программа не работает, обновите версию!
begin Writeln('*** Исходный массив ***'); var a:=MatrRandom(5,5,-99,99); a.Println(4); var min5:=a.Row(4).Min; for var i:=0 to 4 do for var j:=0 to 4 do if a[i,j].IsOdd then a[i,j]:=min5; Writeln('*** Результирующий массив ***'); a.Println(4) end.
Задача 1. Здесь вводим в цикле число и сразу же записываем в список (квадратные скобки), затем применяем встроенную функцию вычисления суммы списка sum и тут же выводим результат. В результате получилось использовать только одну переменную для цикла for
Программа: print(sum([int(input()) for i in range(10)]))
Задача 2. n=int(input()) # вводим число n k=0 #задаем начальное значение счетчика =0 for i in range(n): #в цикле от 0 до n-1 раз выполняем if int(input())==0: #если введенное число равно 0 k+=1 #то счетчик увеличиваем на 1 print(k) #вывод результата
Задача 3. Здесь лесенка строится из строк чисел, где каждая следующая строка ровно на один последний новый символ длиннее предыдущей: 1 12 123 ... То есть достаточно приклеивать к предущей строке новый последний символ и получится лесенка!
Программа:
n=int(input()) #вводим число N s='' #задаем пустую строку for i in range(1,n+1): #в цикле от 1 до n выполняем s+=str(i) #приклеиваем к предыдущей строке новую букву i print(s) #выводим строку символов
Задача 4. Чтобы обойтись без проверки нечетности чисел, достаточно найти ближайшее нечетное число к началу интервала А: допустим, что А=8, тогда A//2*2+1 дает 8//2*2+1=4*2+1=9 (здесь // - нахождение целой части от деления) допустим теперь, что А=9, тогда А//2*2+1=9//2*2+1=4*2+1=9. Так что формула A=A//2*2+1 всегда дает в результате ближайшее справа нечетное число, если число четное, и оставляет число без изменения, если число уже было нечетным. Теперь генерируем список всех нечетных чисел, задавая в операторе range шаг =2, т.е. будем сразу перепрыгивать от нечетного к нечетному числу! После получения списка нечетных чисел дадим команду сортировки в обратном направлении reverse и выводим полученный список!
Программа:
a=int(input()) #задаем начальное значение интервала А b=int(input()) #задаем конечное значение интервала В a=a//2*2+1 #вычисляем ближайшее справа от А нечетное число x=[] #задаем пустой список for i in range(a,b+1,2): # открываем цикл от А до В с шагом 2 x+=[i] #записываем получаемые нечетные числа в список х x.reverse() #задаем обратный порядок списка for i in x: #в цикле по списку х print(i) #выводим все значения списка х
// Внимание! Если программа не работает, обновите версию!
begin
Writeln('*** Исходный массив ***');
var a:=MatrRandom(5,5,-99,99);
a.Println(4);
var min5:=a.Row(4).Min;
for var i:=0 to 4 do
for var j:=0 to 4 do
if a[i,j].IsOdd then a[i,j]:=min5;
Writeln('*** Результирующий массив ***');
a.Println(4)
end.
Пример
*** Исходный массив ***
-65 20 -60 11 59
46 59 -28 65 -33
-34 37 73 -82 76
-57 68 26 85 82
44 -45 30 90 36
*** Результирующий массив ***
-45 20 -60 -45 -45
46 -45 -28 -45 -45
-34 -45 -45 -82 76
-45 68 26 -45 82
44 -45 30 90 36