Выполните следующие :
даны два целых числа a и в, a> b. выведите все нечётные числа от a до b
включительно, в порядке убывания.
даны два целых числа а и в, a> b. выведете произведение всех чисел от а
до в.
пример:
а = 2, в = 4
результат: 24(2*3*4)
дополнительное (на высокую оценку):
по данному натуральному n ≤ 9 выведите лесенку из n ступенек, i-я
ступенька состоит из чисел от 1 до i без пробелов.
пример:
n = 4
результат:
1
12
123
1234
A = int(input())
B = int(input())
while B != A:
if B % 2:
print(B, end=' ')
B -= 1
# Задание 2
A = int(input())
B = int(input())
prod = 1
prod_string = ''
while A != B + 1:
prod *= A
prod_string += str(A)
A += 1
prod_string = str(prod) + '(' + '*'.join(prod_string) + ')'
print(prod_string)
#Python 3.6.2
1)
A = 100
B = 15
for i in range(B,A+1)[::-1]:
if i%2 != 0:
print(i)
2)
A = 2
B = 4
mul = 1
for i in range(A,B+1):
mul *= i
print(mul)
1)
Пока б больше а, {
проверить что при делении на два остаток равен 1, {
б присвоить б минус 1,
вывести б }}
2)
пока б миньше а {
общее присвоить б * счетчик
б присвоить б + 1 }
3)
пока счетчик (введенное число) не равно 0 {
счетчик + 1
выполнять (а = 0, а < счетчик, а присвоить а + 1) {
вывести а }}
Удачи. Надеюсь
A = int(input())
B = int(input())
lst = []
for i in range(B, A):
if i % 2 == 1:
lst += [i]
lst.sort(reverse=True)
for i in lst:
print(i)
Внимание! Если программа не работает, обновите версию!
№1
begin
var (a,b):=ReadInteger2('Введите a,b:');
if a.IsEven then a-=1;
Range(a,b,-2).Println
end.
Пример
Введите a,b: 18 4
17 15 13 11 9 7 5
№2
begin
var (a,b):=ReadInteger2('Введите a,b:');
Range(b,a).Aggregate(BigInteger(1),(i,j)->i*j).Println
end.
Пример
Введите a,b: 50 7
42241796113490802838350844675089956728302279956889600000000000
№3
begin
var n:=ReadInteger('n=');
for var i:=1 to n do
(1.To(i)).Println('')
end.
Пример
n= 7
1
12
123
1234
12345
123456
1234567
begin
readln(a,b);
for i:=a downto b do
if i mod 2 <> 0 then write(i,' ')
end.
var a,b,i,p:integer;
begin
readln(a,b);
p:=1;
for i:=b to a do p:=p*i;
writeln(p)
end.
begin
write ('Введите два целых числа (A>B): ');
readln (a,b);
for i:=a downto b do
if i mod 2<>0 then write (i,' ')
end.
var
a,b,i:integer;
p:longint;
begin
write ('Введите два целых числа (A>B): ');
readln (a,b);
p:=1;
for i:=a downto b do p:=p*i;
writeln ('Произведение всех целых чисел от ',a,' до ',b,' равно ',p)
end.
Здесь вводим в цикле число и сразу же записываем в список (квадратные скобки), затем применяем встроенную функцию вычисления суммы списка 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) #выводим все значения списка х