Впаскале.определите чего в строке больше и на сколько букв или цифр?

viktoriakeda viktoriakeda    1   11.09.2019 20:00    0

Ответы
Inna2404 Inna2404  10.08.2020 18:17
// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ReadlnString;
  var r:=s.MatchValues('[A-Za-zА-Яа-яЁё]').Count-s.MatchValues('\d').Count;
  if r>0 Then Writeln('Букв больше на ',r)
  else
    if r<0 Then Writeln('Цифр больше на ',-r)
    else Writeln('Букв и цифр поровну')
end.

Пример
erer344rкеПВРМИHD5r54687rt8743ge56t5g54ф456
Букв больше на 1
ПОКАЗАТЬ ОТВЕТЫ
st1rb1t st1rb1t  10.08.2020 18:17
// PascalABC.NET 3.3, сборка 1576 от 16.11.2017
// Внимание! Если программа не работает, обновите версию!

egin
  var s := ReadString;
  var digit, letter: integer;
  for var i := 1 to s.length do
    if (s[i] >= '0') and (s[i] <= '9') then
      inc(digit)
    else
    if (s[i] ='ё')or(s[i]='Ё')or(s[i] >='а')and(s[i]<='я')or(s[i] >='А')and(s[i]<='Я')or(s[i] >='a')and(s[i]<='z')or(s[i] >='A')and(s[i]<='Z')then
    inc(letter);
   
  if digit < letter then
    writeln('Букв больше, чем цифр на ', letter - digit)
  else
  if digit > (s.length - digit) then
    writeln('Цифр больше, чем букв на ', digit - letter)
 else
    Writeln('Цифр столько же, сколько и букв');
 
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика