Выведите сколько денег стало у Васи - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

3. Уличная магия Имя входного файла input.txt Имя выходного файла output.txt Максимальное время работы на одном тесте 2 секунды Ограничение по памяти 64 МБ Вася заработал много денег. Вася обучался магии и решил за счет этого обогатиться. Он соединил все номиналы купюр в одну купюру, чем преумножил свой капитал. Наставник Васи узнал, чем он занимается, и решил его наказать. Он превратил одну купюру очень большого наминала в кучу маленьких с номиналами, соответствующими цифрам из исходной купюры. Подсчитайте сколько денег стало у Васи. Формат входных данных В единственной строке содержится одно неотрицательное целое число, содержащее не более 1000000 цифр*– номинал купюры. Формат выходных данных Выведите сколько денег стало у Васи. Пример input.txt output.txt 99 18 1234 10

Решение задачи: «Выведите сколько денег стало у Васи»

textual
Листинг программы
var
   s:string;
   r,i:integer;
   a,o:text;
begin
assign(a,'input.txt');
assign(o,'output.txt');
reset(a);
rewrite(o);
while not eof(a) do
  begin
    readln(a,s);
    for i:=1 to length(s) do
      inc(r,strtoint(s[i]));
    writeln(o,r);
    r:=0;
  end;
close(a);
close(o);
end.

Объяснение кода листинга программы

  1. В начале кода объявляются переменные s, r, i, a и o. Переменная s типа string предназначена для хранения содержимого файла input.txt, переменная r типа integer используется для подсчета суммы денег, переменная i также типа integer используется для итерации по строке s, а переменные a и o типа text используются для чтения и записи файлов соответственно.
  2. Затем выполняется назначение файлов input.txt и output.txt с помощью функции assign.
  3. Следующий шаг - сброс файла output.txt с помощью функции reset.
  4. Затем выполняется цикл while, который будет выполняться до тех пор, пока не будет достигнут конец файла input.txt.
  5. Внутри цикла считывается содержимое файла input.txt в переменную s с помощью функции readln.
  6. Затем происходит цикл for, который выполняется от 1 до длины переменной s. Внутри цикла переменная r увеличивается на значение каждого символа в переменной s, преобразованного в целое число с помощью функции strtoint.
  7. После завершения внутреннего цикла переменная r записывается в файл output.txt с помощью функции writeln.
  8. После окончания внешнего цикла переменная r сбрасывается до 0 с помощью оператора inc.
  9. По завершении работы с файлами они закрываются с помощью функций close.
  10. Код завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы