Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 08.01.2010, 00:06   #21 (permalink)
Ins1s
Member
 
Регистрация: 14.12.2009
Сообщений: 53
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

program Oo;
var seson:char;
n,b:real;
сase b of: ---------------------------- тут он выдвет ошибку.
12,1,2: seson:='Зима';
3..5: seson:='Весна';
6..8: seson:='Лето';
9..11: seson:='Осень';
end;
case b of:
{с начала сезона прошло количество дней, равное сегодняшней дате}
12,3,6,9: n:=a-1;
{с начала сезона прошло количество дней, равное сумме предыдущих месяцев плюс сегодняшняя дата}
1,4: n:=31+a-1;
2: n:=31+31+a-1;
5,8,11: n:=31+30+a-1;
7,10: n:=30+a-1;
end;
writeln ('Сейчс на дворе ',seson, '; с начала сезона прошло ', n, ' дней');
END.
Ins1s вне форума   Ответить с цитированием
Старый 08.01.2010, 00:29   #22 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Собственно ступил, после of не надо двоеточия. И b должно быть целого типа
MrSTEP вне форума   Ответить с цитированием
Старый 08.01.2010, 00:35   #23 (permalink)
Ins1s
Member
 
Регистрация: 14.12.2009
Сообщений: 53
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

ага спс =)
Ins1s вне форума   Ответить с цитированием
Старый 08.01.2010, 00:36   #24 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Да, и seson не char (символ), a string (строка)
MrSTEP вне форума   Ответить с цитированием
Старый 08.01.2010, 09:41   #25 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от MrSTEP Посмотреть сообщение
Да, и seson не char (символ), a string (строка)
Ага, а еще не описана переменная а, а еще не поставлен общий открывающий begin, а еще пропущен останов, а еще...
Ну ладно, как-то так (проверено):
Код:
program Oo;
Var
 Season:STRING;
 date,month,n:INTEGER;
BEGIN
 WriteLn('Enter current month and date:');
 Write('Month= '); ReadLn(Month);
 Write('Date= '); ReadLn(Date);
 Case Month of
  12,1,2: Season:='winter';
    3..5: Season:='spring';
    6..8: Season:='summer';
   9..11: Season:='autumn';
 end;
 Case Month of
{Number of days passed from the season beginning is equal to current date}
  12,3,6,9: n:=Date-1;
{Number of days passed from the season beginning is equal to current date
 plus the sum of days in previous month(s)}
       1,4: n:=31+Date-1;
         2: n:=31+31+Date-1;
    5,8,11: n:=31+30+Date-1;
      7,10: n:=30+Date-1;
 end;
 Writeln ('It is '+Season+' now; ',n,' days passed from the beginning.');
 ReadLn;
END.
Комментарии:
1. Перешел на английский, потому что приходится прыгать между Windows и DOS, а у них разные кодировки кириллицы. Транслит же терпеть не могу.
2. Один из общих принципов написания программ: идентификаторы следует, по возможности, использовать осмысленные, а не безликие a, b, c...
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 08.01.2010, 11:36   #26 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Ну вот я написал фрагмент программы, который обрабатывает полученные данные и выводит их. Автор же принял это за весь раздел операторов.
Комментарии к комментариям:
1) писал код прямо здесь, на форуме, так что проблем с кодировками не было. Как будет в итоге - по-русски, по-английски или транслитом, решать автору;
2) переменные а, b и с были заявлены автором в первом посте. Сам же я тоже предпочитаю использовать более-менее осмысленные имена. ну кроме переменной i, которая на рынке счетчиков уже около 20 лет
З.Ы. Проблем с кодировкой в Windows и DOS можно избежать, если использовать текстовый редактор AkelPad. С его помощью файл можно сохранить в такой кодировке, в которой и винда, и дос будут корректно отображать кириллицу
MrSTEP вне форума   Ответить с цитированием
Старый 08.01.2010, 12:06   #27 (permalink)
AlexZir
support
 
Аватар для AlexZir
 
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,794
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
По умолчанию

Вот это вряд ли, хотя им же можно и перекодировать в другую кодировку. А еще можно пользоваться Notepad++, тот вообще синтаксис подсвечивает
__________________
Убить всех человеков!
AlexZir вне форума   Ответить с цитированием
Старый 09.01.2010, 15:34   #28 (permalink)
Ins1s
Member
 
Регистрация: 14.12.2009
Сообщений: 53
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

спс вам.. я тут многое узнал
Ins1s вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 13:37.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.