Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2015, 17:40   #1
gromdel
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 68
По умолчанию Почему программа решена не правильно?

Здравствуйте, записался в онлайн олимпиаду. Сегодня пробное решение было. Решил задачу, отправил. Подскажите, почему задача не правильна решена.
Вот задание:

Вот решение:
Код:
var
f,f2:text;
j,a:integer;
m:array[1..40] of longint;
begin
 assign(f,'stdin');
 assign(f2,'stdout');
reset(f);
rewrite(f2);
j:=0;
while not eof(f) do
begin
read(f,a);
j:=j+a;
end;
writeln(f2,j);
close (f2);
close (f);
end.
Подскажите пожалуйста.
gromdel вне форума Ответить с цитированием
Старый 28.11.2015, 17:53   #2
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Стандартный ввод и вывод. Это тот который работает с консолью, а не с файлами.
stdin и stdout - это для Си.
В паскале надо просто читать с консоли и выводить на неё.
Read(a);
WriteLn(Sum);
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 28.11.2015, 17:57   #3
gromdel
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 68
По умолчанию

Извините, хочу уточнить. В правилах было сказано, что решения программа проверяет автоматически. Вопрос отсюда вытекает. Она сможет работать с read и writeln? Я еще не сталкивался с такими ситуациями
gromdel вне форума Ответить с цитированием
Старый 28.11.2015, 18:18   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Я бы попробовал и узнал может или нет. Откуда кому то знать как там реализовано?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 28.11.2015, 18:21   #5
gromdel
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 68
По умолчанию

Пробовать один раз можно. Думал, все олимпиады одинаково устроены, и кто-то из избороздил десятками уже
gromdel вне форума Ответить с цитированием
Старый 28.11.2015, 18:22   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Обычно пишут требования, почитай внимательно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 28.11.2015, 18:25   #7
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Цитата:
В правилах было сказано, что решения программа проверяет автоматически. Вопрос отсюда вытекает. Она сможет работать с read и writeln? Я еще не сталкивался с такими ситуациями
Да, сможет. Программа автоматического тестирования перенаправляет ввод и вывод тестируемой программы в себя.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 29.11.2015, 02:20   #8
temaps
Форумчанин
 
Регистрация: 15.05.2011
Сообщений: 160
По умолчанию

ДЛя паскаля стандартный вывод и ввод input и output
Код:
program blahblah;

var s :string;

begin
  reset(input);
  rewrite(output); 
  while not eof(input) do begin
    readln(input,s);
    writeln(output,s);
  end;
  close(output);
  close(input);
end.
temaps вне форума Ответить с цитированием
Старый 29.11.2015, 02:22   #9
temaps
Форумчанин
 
Регистрация: 15.05.2011
Сообщений: 160
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Стандартный ввод и вывод. Это тот который работает с консолью, а не с файлами.
stdin и stdout - это для Си.
В паскале надо просто читать с консоли и выводить на неё.
Read(a);
WriteLn(Sum);
А как тогда понять что ввод закончен? Там в условии просто "поток данных"
temaps вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
почему программа работает не правильно Devil669 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 10 23.01.2015 00:22
Правильно ли она решена? WitaliG Помощь студентам 2 20.10.2010 22:30
правильно решена или нет?? durachok) Помощь студентам 1 27.12.2008 08:23
решена правильно или нет??? durachok) Паскаль, Turbo Pascal, PascalABC.NET 3 25.12.2008 15:24