Даю 72 балла за правильно выполненное задание1. напишите программу, которая вводит

Даю 72 балла за верно выполненное задание

1. напишите программку, которая вводит последовательность целых чисел, заканчивающихся нулём, и определяет, сколько из этих чисел удовлетворяет условию: сумма значений цифр десятичной записи числа одинакова 10.
2.Напишите программу, которая вводит с клавиатуры естественное число N и определяет его факториал.Что будет, если ввести великое значение N(к примеру, 20)?
3.Напишите программу, которая определяет, верно ли, что введённое число содержит по крайней мере 2 схожие цифры, вероятно, не стоящие рядом(как, к примеру, 212)

Задать свой вопрос
2 ответа
PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018
Внимание! Если программка не работает, обновите версию!

1

function IsGood(n:integer):boolean;
begin
  n:=Абс(n);
  var s:=0;
  while ngt;0 do begin
    s+=n mod 10;
    n:=n div 10
    end;
  Result:=s=10
end;

begin
  var k:=ReadSeqIntegerWhile(t-gt;tlt;gt;0).Where(t-gt;IsGood(t)).Count;
  Writeln(k,' чисел с суммой цифр, одинаковой 10')
end.

Пример
-5234 20043 52340 10531 -64 31502 0
2 чисел с суммой цифр, одинаковой 10

2

begin
  var n:=ReadInteger('Введите число:');
  if nlt;=1 then Writeln(n,'!=',1)
  else Writeln(n,'!=',1.To(n).Aggregate(BigInteger(1),(i,j)-gt;i*j))
end.

Образцы
Введите число: 5
5!=120

Введите число: 20
20!=2432902008176640000

Введите число: 100
100!=93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000

3

begin
  if ReadInteger('Введите число:').ToString.GroupBy(t-gt;t).
      Select(t-gt;(t.Key,t.Count)).Any(t-gt;t[1]gt;1)
  then Writeln('Число содержит по последней мере две схожие числа')
  else Writeln('Введенное число не содержит схожих цифр')
end.

Образцы
Введите число: 12345670
Введенное число не содержит схожих цифр

Введите число: 1320624
Число содержит по крайней мере две схожие цифры
1)
var i,a:Integer;
begin
a:= 1;
while alt;gt;0 do
begin
Read(a);
i+=a;
end;
WriteLn(i=10);
end.

2) Можно через double. Но после 170! теснее бесконечность.
var n:Integer;
var b:double;
begin
b:=1;
Read(n);
for var i:= 1 to n do
b*=i;
WriteLn('factorial '+n+' = '+b);
end.

3) Работает как и с числами так и со строчками.
var arr:array of char;
var a:String;
var first,last:Integer;
begin
Read(a);
arr:= a.ToCharArray();
for var i:= 0 to arr.Length-1 do
begin
first:=Pos(arr[i], a);
last:=Pos(arr[i], a,first+1);
if (firstgt;0) and (last gt; 0) and (firstlt;gt;last) then
begin
first:=99;
break;
end;
end;
if first = 99 then
WriteLn('Содержит. Это число '+arr[last-1])
else
WriteLn('Несодержит.');
end.
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо

Разные вопросы.

Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных

Разные вопросы.

Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей

Математика.

Определить предложения какие они по цели высказывания и по интонации

Русский язык.

"Три толстяка" Называли эту площадь Площадью Звезды последующей причине.

Русский язык.

на одной грядке коротышки посадили 3 ряда морковок по 8 штук

Разные вопросы.

эссе на тему какое образование дается в каждой семье

Қазақ тiлi.

Put the verb in brackets into the Present Indefinite. 1The Volga ,

Английский язык.

Сколько стоит коктейль молочный? Точную цену надо?

Математика.

Составить рассказ Из чего складывался культ монарха помазанника Божьего?

История.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт