четверг, 1 декабря 2016 г.

11А Символьный тип данных

Домашнее задание: ссылка

Примеры решения задач
Задача 1. Вводится последовательность символов, заканчивающаяся точкой. Найти сумму цифр, входящих в последовательность.
Решение. Поскольку в таблицах кодировки цифры кодируются последовательно, то вычислив
код нуля (функция ord('0') ), мы сможем получить и коды остальных цифр. А разность между кодом цифры и кодом нуля будет равна значению этой цифры.
var 
  c: char; 
  s: integer;
Вegin
  s :=0;
  read (c);
  while c <> '.' do
    begin
      if (c>='0') and (c<='9') then 
        s:= s+ord(c)–ord('0');
      read (c);
    end;
  writeln('Сумма цифр равна ',s);
End.
Задача 2. Вводится последовательность слов, состоящих только из латинских букв (заглавных и строчных). Соседние слова отделяются пробелом, признак конца ввода – точка. Определить количество слов, которые начинаются на букву A.
Решение. Будем вводить последовательность посимвольно. Обработка производится с помощью вложенных циклов: внешний цикл перебирает слова, внутренний цикл анализирует слово.
var 
  c:char; 
  k:integer;
Вegin
  k:=0;
  repeat
    read(c);
    if c='A' then k:=k+1;
    repeat
      read(c)
    until (c=' ') or (c='.');
  until c='.';
  writeln('Подходящих слов ',k);
End.

Комментариев нет:

Отправить комментарий