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

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

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

 
 Ответить  Открыть новую тему 
> Задача на множества, Вывод дня недели рабочий или выходной
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский
Реальное имя: Марина

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


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

Задача:
Дано: type деньнедели=(пн,вт,ср,чт,пт,сб,вс);
Var wd:деньнедели; t: boolean;
Требуется переменной t присвоить значение true,если wd-рабочий день, и значение false иначе. Для вычисления написать функцию типа Boolean.

program week;
uses crt;
type
weekday=(Mon, Tue, Wed, Thu, Fri, Sat, Sun);

var wd:string;
    t:boolean;
    n:integer;
    bud:set of weekday;
begin
writeln('Введите день недели (сокращенно)');
readln(wd);
bud:=[Mon, Tue, Wed, Thu, Fri];
if wd in bud then writeln ('Ok');





readkey;
end.




как не пытались... не работает и все тут... разные вариации пробовали не работает. что делать? unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






mapblwka, вот так не пробовала?

program week;
uses crt;
type
  weekday=(Mon, Tue, Wed, Thu, Fri, Sat, Sun);
const
  days: array[weekday] of string =
    ('Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun');

var
  wd:string;
  i: weekday;
  t: boolean;
  bud:set of weekday;
begin
  write('Введите день недели (сокращенно) '); readln(wd);
  bud:=[Mon, Tue, Wed, Thu, Fri];
  t := false;
  for i := mon to sun do
    if wd = days[i] then
      if i in bud then t := true;

  readkey;
end.

?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский
Реальное имя: Марина

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


посещали нас такие мысли, но вот сформулировать в паскале мы их грамотно не смогли...

Тут какая то запарка с TRUE и FALSE почему если ввести такие строки:

if t=true then writeln('Будень');
if t=false then writeln('Выходной');



он выводит совершенно наоборот то есть

if t=false then writeln('Будень');
if t=true then writeln('Выходной');

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






To: mapblwka
  if t then writeln ('Будний')
  else writeln('Выходной');

У меня совершенно нормально отрабатывает. Ты пример вводимых значений приведи...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

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


mapblwka , не забывай вводить точно сокращения..
так mon не равно Mon, потому что регистр 1 буквы разный... вот отого у тебя и ошибка..


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский
Реальное имя: Марина

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


To: Altair
АААААААААА!!! Я ЛУЗЕРРРР!!!! Не догадалась сама! give_rose.gif СПАСИБО ОГРОМНОЕ!!!!


ВСЕМ ОГРОМНОЕ СПАСИБО! все так просто.. как всегда, а мы не догадались... наверно множество не наш конек nea.gif ниче! исправимся!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 22.04.2025 17:07
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name