IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> практика по курсовой паскаль АВС
Шорох Анастасия
сообщение 28.05.2013 22:12
Сообщение #1





Группа: Пользователи
Сообщений: 8
Пол: Женский

Репутация: -  0  +


программа готова, нужно дописать проверку на ввод данных. если вдруг человек-дурак и вместо чисел пишет "перекпа" или "12.34.8787". что-то, а это даже не представляю как делать. ПАСКАЛЬ АВС
Код
uses crt;
var d,m,z,c,y,a,day: integer;
    e: integer;
    den: string;
begin
writeln('Введите дату в формате dd mm yyyy, где d - день, m - месяц, y - год');
writeln('Пример: 19 01 2012');
read(d,m,z);
c:=z div 100;
y:=z mod 100;
day:=abs(trunc(2.6*m-0.2)+d+y div 4+y+c div 4-2*c);
a:= day mod 7;
case a of
1: den:='пн';
2: den:='вт';
3: den:='ср';
4: den:='чт';
5: den:='пт';
6: den:='сб';
0: den:='вс';
end;
Case m of
1: If d>=21 Then Writeln('водолей') Else
   Writeln('козерог');
2: If d>=21 Then Writeln('рыбы') Else
   Writeln('водолей');
3: If d>=21 Then Writeln('овен) Else
   Writeln('рыбы');
4: If d>=21 Then Writeln('телец') Else
   Writeln('овен');
5: If d>=21 Then Writeln('близнецы') Else
   Writeln('телец');
6: If d>=22 Then Writeln('рак') Else
   Writeln('близнецы');
7: If d>=23 Then Writeln('лев') Else
   Writeln('рак');
8: If d>=24 Then Writeln('дева') Else
   Writeln('лев');
9: If d>=24 Then Writeln('весы') Else
   Writeln('дева');
10:If d>=24 Then Writeln('скорпион') Else
   Writeln('весы');
11:If d>=23 Then Writeln('стрелец') Else
   Writeln('скорпион');
12:If d>=22 Then Writeln('козерог') Else
   Writeln('стрелец');
end;
Writeln('день недели в указанной дате - ',den);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
APAL
сообщение 29.05.2013 12:23
Сообщение #2


Смотрю...
*****

Группа: Модераторы
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Уж не знаю, есть ли в ABC-Паскале, но в TurboPascal имеется:

При преобразовании строки в число надо будет обрабатывать код возрата.

Цитата
Val (процедура)
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Преобразовывает строковое значение в его числовое представление.

Объявление:
Procedure Val(S; Var V; Var Code : Integer);

Где:
S - переменная со строковым типом. Должна представлять
последовательность символов, формирующих знаковое целое число.
V - переменная типа Real или Integer
Code - переменная типа Integer

Режим:
Windows, Real, Protected

Замечания:
Преобразовывает строковое значение (S) в его числовое представление, как это
происходит при чтении из текстового файла с помощью Read. Code - позиция, в
которой произошла ошибка при преобразовании, или нуль, если ошибки не было.


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 14:35
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"