Дано натуральное число.Определить,какая цифра встречается в нём чаще-1 или 9. Pascal

0 голосов

Дано натуральное число.Определить,какая цифра встречается в нём чаще-1 или 9.
Pascal


спросил от (29 баллов) в категории Информатика
2 Ответы
0 голосов
ответил от Архангел (142k баллов)
 
Лучший ответ
А вот так это можно написать на современном Паскале, но мало где этому учат:

// PascalABC.Net 3.0, сборка 1066
begin
  var s:=ReadInteger('Введите натуральное число: ').ToString;
  var k1:=s.Where(x->x='1').Count;
  var k9:=s.Where(x->x='9').Count;
  if k1>k9 then Writeln('Единиц больше')
  else
    if k9>k1 then Writeln('Девяток больше')
    else Writeln('Единиц и девяток поровну')
end.

Тестовое решение:
Введите натуральное число:  231192
Единиц больше
0 голосов
ответил от Одаренный (1.0k баллов)

Varn, nine, one: integer;
begin
readln(n);
nine := 0;
one := 0;
while (n > 0) do
begin
if (n mod 10 = 1) then
inc(one)
else
if (n mod 10 = 9) then
inc(nine);n := n div 10;
end;
if (one = nine) then
writeln('Равны')
else
if (one > nine) then
writeln('Единиц больше')
else
writeln('Девяток больше');
end.

оставил комментарий от (29 баллов)

Можете inc расписать?

оставил комментарий от Одаренный (1.0k баллов)

В каком смысле?

оставил комментарий от БОГ (194k баллов)

inc(one) это тоже самое, что one:=one+1;

оставил комментарий от Одаренный (1.0k баллов)

Ну да, inc - инкремент. Принципиальной разницы не вижу. При большем желание даже можно записать как dec(x, -1)

...