//PascalABC.NET версия 3.3.5
var ar: array[0..3] of integer;
digits: array[0..9] of integer;
out: array[1..4, 1..7]of integer;
begin
for var i := 0 to 9 do
digits[i] := 0;
var sum := 0;
for var i := 1 to 2 do
begin
out[i][1] := 1053;
out[i][2] := 1077;
out[i][3] := 1074;
out[i][4] := 1077;
out[i][5] := 1088;
out[i][6] := 1085;
out[i][7] := 1086;
end;
out[4][1] := 1053;
out[4][2] := 1077;
out[4][3] := 1074;
out[4][4] := 1077;
out[4][5] := 1088;
out[4][6] := 1085;
out[4][7] := 1086;
out[3][1] := 1042;
out[3][2] := 1077;
out[3][3] := 1088;
out[3][4] := 1085;
out[3][5] := 1086;
out[3][6] := 160;
out[3][7] := 160;
var num := readinteger('Введите четырехзначное число:');
ar[3] := num mod 10;
ar[2] := num div 10 mod 10;
ar[1] := num div 100 mod 10;
ar[0] := num div 1000;
for var i := 0 to 3 do
digits[ar[i]] += 1;
for var i := 0 to 9 do
try
sum += digits[i] div digits[i];
except
on System.DivideByZeroException do
end;
for var i := 1 to 7 do
write(chr(out[sum][i]));
end.
Вот программа:
uses Crt;
var i: integer;
begin
ClrScr;
for i:=65 to 90 do
Write(Chr(i):4);
WriteLn; WriteLn;
for i:=97 to 122 do
Write(Chr(i):4);
WriteLn;
ReadLn;
end.
#include<stdio.h>
void main()
{
float coast, result;
int beginm, endm;
printf("Задайте показания счетчика на начало месяца ");
scanf("%d", &beginm);
printf("\nЗадайте показания счетчика на конец месяца ");
scanf("%d", &endm);
printf("\n Задайте стоимость 1 кВт ч ");
scanf("%f", &coast);
result=(endm-beginm)*coast;
printf("\n\n Месячная оплата за электроэнергию составит: .2%f\n", result);
}
Решение можно получить, рассуждая следующим образом.
Максимальное количество возможных сложений равно количеству команд и это дает в результате 1+1+1+1+1+1=6, но никак не 45. Разница большая, поэтому её надо преодолевать пр помощи умножения.
Пойдем от обратных операций - будем из 45 получать 1 путем деления на 3 и вычитания 1.
1) 45/3=15 2) 15/3=5 3) 5 на 3 не делится, вычитаем 1 и получаем 4. 4) 4 на 3 не делится, вычитаем 1 и получаем 3. 5) 3/3=1 - мы пришли к 1 за 5 команд.
Теперь осталось записать в обратном порядке команды калькулятора.
Мы должны получить следующие шаги: 1) 1х3=3 2) 3+1=4 3) 4+1=5 4)5х3=15 5) 15х3=15.
Ответ: 21122
<span>Всего нужно сыграть 5*6=30(матчей)
Уже сыграно 18 матчей
30-18=12(матчей) - осталось.
Ответ: сыграно -18; осталось -12</span>