Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Turbo Pascal задача

Кристина Колесникова Мастер (1758), закрыт 15 лет назад
Определить, являются ли введенные символы правильной записью целого числа, и вычислить сумму цифр введенного числа.

Входные данные. Во входном файле d.in задана строка, длина которой не превышает 255 символов. Строка может содержать символы русского и латинского алфавитов и символы цифр.

Выходные данные. В выходной файл d.out вывести значение суммы цифр числа, если строка содержит только символы цифр.

Я вроде бы решила, но решение прошло только на 90 баллов из 100. Я не могу понять че не нравится ему. Так как я почти нифига не понимаю в програмирования, я думаю что у меня скороей всего полностью идиотское решение и дебильная ошибка, помогите кто-нибудь ее решить нормально.
Вот мое решение:

var a,b:char;
begin
assign(input,'j.in');
reset(input);
assign(output,'j.out');
rewrite(output);
b:=#32;
while not eof do begin
read(a);
write(a);
if a=#44 then write(b);
end;
close(input);
close(output);
end.

какой-то один каверзный тест не прошла
Дополнен 15 лет назад
я идиотка, я не условие выложила.
Лучший ответ
Gennady Гений (60223) 15 лет назад
Доброго времени суток.

По-сути, вот ваш весь функционал.

b:=#32;
while not eof do begin
read(a); {считали символ из входного файла}
write(a); {и записали его в выходной}
if a=#44 then write(b); {если имволом была запятая, то добавили после нее пробел}
end;

Я не вижу здесь и близко суммы цифр и прочее. Может вы не ту программу показали? Эта добавляет пробелы после запятой. Что не понравилось, трудно сказать.. .

Удачи!

2 gambit: В турбо как и в Delphi, что касается Read и Write. Но.. . Если в качестве устройств ввода/вывода используются стандартные устройства input и output, то можно и не писать Write(output, a); Write будет по-умолчанию выводить в выходной файл. С этой стороны все нормально.
Остальные ответы
Gam Мыслитель (6303) 15 лет назад
Я уже давно бросил delphi, поэтому может вопрос глупый, но скажи где ты суммируешь числа?? ? Тебеже надо сумму вывести, а вообще задание глупое, что надо выводить в файл если у тебя в строке буквы?? ?
Кроме того, я не знаю как в Turbo Pascal, но в delphi функция write (read тоже к этому относится) выводила значение на консоль, а в файл писала перегруженный вариант этой функции которой передавался файл который надо писать write(input, a);
Похожие вопросы