1. Створіть клас, який називається SportResults, який не має вмісту, і виведіть його на екран. Потім створіть екземпляр diving цього класу і також виведіть його. Чи збігаються виведені значення?
2. У клас SportResults додайте змінну points зі значенням 25 і виведіть на екран значення атрибуту points для екземпляру diving. А потім надайте значення 150 для points. Знову виведіть на екран значення атрибуту points для екземпляру diving. Чи потрібно було створювати новий екземпляр класу, щоб зробити повторне виведення?
3. Створіть клас, який називається Element, з методом __init__, що має атрибути екземпляру name, symbol і number. Створіть екземпляр цього класу el зі значеннями 'Silicium', 'Si' і 14 і виведіть на екран значення його атрибутів.
4. Створіть словник з наступними ключами і значеннями: 'name': 'Argentum', 'symbol': 'Ag', 'number': 47. Далі створіть екземпляр з ім’ям argentum класу Element за до цього словника і виведіть значення усіх атрибутів.
Определим остаток от деления а на 8. Если он нулевой, то a - первое из найденных чисел. Остаток от деления 121 на 8 равен 1, т.е. нам не повезло. Тогда прибавим к значению а число 8 и вычтем найденный остаток.121+8-1=128. Это и есть наше первое число. Сужаем интервал [128;400]. Чтобы найти, сколько на нем чисел, кратных 8, надо разделить нацело 400-128 на 8 и прибавляем к результату единицу. Получаем 35 - это и есть ответ.
Программу составим универсальную, которая будет находить на интервале [a;b] количество чисел, кратных m.
PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018
Внимание! Если программа не работает, обновите версию!
begin
var (a,b):=ReadInteger2('Введите через пробел границы интервала:');
var m:=ReadInteger('Укажите число для поиска кратных ему:');
var r:=a mod m;
if r>0 then a:=a+8-r;
Writeln('Количество чисел равно ',(b-a) div m +1)
end.
Пример
Введите через пробел границы интервала: 121 400
Укажите число для поиска кратных ему: 8
Количество чисел равно 35
2. В этой задаче все совсем просто. Читаем очередное число p, находим остаток от деления p на восемь. Если он ненулевой, проверяем, чтобы остаток от деления p на 10 был равен двум. Если и это верно, добавляем p к накапливаемой сумме s. Так поступаем n раз.
begin
var n:=ReadInteger('n=');
var s:=0;
var p:integer;
for var i:=1 to n do begin
Read(p);
if p mod 8 <> 0 then
if p mod 10 = 2 then s:=s+p
end;
Writeln('Сумма отобранных чисел равна ',s)
end.
Пример
n= 8
127 32 222 45 80 832 702 29
Сумма отобранных чисел равна 924
Var i,m : integer;
Begin
read(m);
if m>31 then begin
for i:=31 to m do
if (i mod 16) = 0 then writeln(i);
end;
end.
2)Program NoName;
Var i,n,x,c : integer;
Begin
c:=1;
x:=0;
i:=0;
while i<5 do begin
if (c mod 13) = 0 then
begin x:=x+c; i:=i+1;
end;
c:=c+1;
end;
write(x);
end.
3)Program NoName;
Var i,n,x,c : integer;
Begin
read(n);
c:=1;x:=1;i:=0;
while i<n do
begin
if (c mod 11) = 0 then
begin x:=x*c;
i:=i+1;
end;
c:=c+1;
end;
write(x);
end.
4)Program NoName;
Var i,m,x : integer;
Begin
x:=0;i:=1;
while x<7 do begin
if (i mod 7) = 0 then
begin
writeln(i);x:=x+1;
end;i:=i+1;
end;
end.