Необходимо покрасить стены кухни. Сколько потребуется банок краски, если известно, что: размеры кухни 405 x 310 x 285 см, 88% площади стен занимает кафельная плитка; 1 банка краски предназначена для покраски площади 5 м??
Значит так: мы создаем массив избыточной длины, куда потом будем записывать рандомные числа. Так же мы создаем массив-счетчик b (у него индексами являются сами числа, а элементами - количество этого числа в массиве А), куда будет присваиваться, сколько раз нам встречается то или иное число (перед этим мы массив обязательно обнулим). В конце мы смотрим максимальное число из массива-счетчика. Вуаля!
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer; b:array [1..10] of longint; c:integer; i,max,n:longint; begin write('Введите число элементов массива: '); readln(n); max:=0; for i:=1 to 10 do b[i]:=0; for i:=1 to n do begin a[i]:=random(10)+1; write(a[i],' '); b[a[i]]:=b[a[i]]+1 end; for i:=1 to 10 do if b[i]>max then begin c:=i; max:=b[i] end; writeln; writeln('Чаще всего в массиве встречается число ',c) end.
17. num = 23
# 1 вариант - преобразуем число в строку, разбиваем на цифры
string = str(num)
if int(string[0]) < int(string[1]): # если первая цифра меньше второй
string = string[1] + string[0] #меняем их местами
num = int(string)
# 2 вариант - остатком от деления на степени 10
# остаток от деления на 10 - первая цифра числа, остаток от деления на 100 - вторая и так далее
if num % 10 < num % 100: #если первая цифра меньше второй
num = num % 10 * 10 + num % 100
21.
num = 1234
# 1 вариант - преобразуем число в список и находим сумму цифр
string = str(num)
lst = [int(n) for n in string] # учили списковое включение? если нет, смотри следующий код
lst = []
for n in string:
lst.append(int(n)) # это все если не учили списковое включение
# второй вариант - остатки от деления на 10 суммируем вручную
first = num % 10
sec = num % 100
th = num % 1000
four = num % 10000
result = first + sec + th + four
result = sum(n)
Объяснение:
Функция sum() возвращает сумму элементов списка
Если будут вопросы - пиши
Если пригодилось - оцени ответ ;)
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer;
b:array [1..10] of longint;
c:integer;
i,max,n:longint;
begin
write('Введите число элементов массива: ');
readln(n);
max:=0;
for i:=1 to 10 do
b[i]:=0;
for i:=1 to n do begin
a[i]:=random(10)+1;
write(a[i],' ');
b[a[i]]:=b[a[i]]+1
end;
for i:=1 to 10 do if b[i]>max then
begin
c:=i;
max:=b[i]
end;
writeln;
writeln('Чаще всего в массиве встречается число ',c)
end.