Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/48: Рейтинг темы: голосов - 48, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23

Определить, какому столбцу таблицы истинности соответствует каждая из переменных

05.09.2020, 15:06. Показов 9990. Ответов 33

Студворк — интернет-сервис помощи студентам
Pascal
1
2
3
4
5
6
7
8
9
10
program name;
var
x, y, z, w: integer;
for x:=0 to 1 do
for y:=0 to 1 do
for z:=0 to 1 do
for w:=0 to 1 do 
if (формула)[LATEX]((x and \bar{y})V(y\leftrightarrow z)Vw)=1[/LATEX] then
writeln (w,'',x,'',y,'',z);
end.
Когда я преобразую формулу, то программа выдает ошибку, что после then должна быть скобка.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.09.2020, 15:06
Ответы с готовыми решениями:

Решение задачи
Вычислить:

Решение олимпиадной задачи
Есть задача, никак не могу решить не то что решить, но и до конца осознать условие. Буду рад любой помощи Ссылка удалена.

Изменить решение задачи
Всем привет! Была у меня задачка: одноклеточная амёба каждые 4 часа делится на 2 клетки. Определить, сколько амёб будет через 3, 6, 9,...

33
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
05.09.2020, 21:22  [ТС]
Студворк — интернет-сервис помощи студентам
Я не видела, что фотографии запрещены. Просто другой модератор сам прикрепил условие с фото.
0
Модератор
10455 / 5752 / 3409
Регистрация: 17.08.2012
Сообщений: 17,500
05.09.2020, 22:17

Не по теме:

Nyusha5353, извините, но при регистрации на форуме Вам предлагалось ознакомиться с правилами форума. Ссылка на эти правила есть в шапке любой страницы этого форума. Можете с ними не знакомиться, никто не принуждает. Но выполнять эти правила Вы обязаны (обязаны-обязаны, не спорьте, Вы сами лично при регистрации обязались эти правила выполнять, без этого регистрация невозможна). Вот такой юридический казус.

И ещё. Это очень невежливо, вынуждать тех, кто желает Вам помочь, перепечатывать текст, с Ваших картинок. Например, текст Вашей программы, просто для того, чтобы её проверить. Или просто текст Вашего задания, для того, чтобы его процитировать. Так что, пожалуйста, если неоткуда скопировать текст - печатайте текст вручную.

Не все модераторы такие же дотошные, как я. Многим лень (или некогда) превращать Ваши картинки в текст. Скажите спасибо, что Вашу ссылку не удалили, ещё и контент перенесли на форум. Вообще, ссылки удаляются, а фотографии текста - блокируются.



Добавлено через 32 минуты
По существу темы.

ProMix0, функции бывают не только паскалевские, но и, например, логические. В задании имеется ввиду логическая функция

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
F=(x\wedge \neg y)\vee (y\equiv z)\vee w<br />

На правах почётного Капитана Очевидность, поясняю: Nyusha5353, ProMix0, нужно по частично определённой таблице истинности, в которой вместо имён переменных указаны ???, нужно определить последовательность замены этих самых ??? конкретными именами переменных. Нужно комбинацию подбирать, а Вы четырьмя никчемными циклами балуетесь.
0
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
05.09.2020, 22:23  [ТС]
Нужно построить просто таблицу истинности для логического выражения. А дальше уже по этой таблице можно определить и где какая переменная именно в задаче. С выражением у меня и проблема, так как пишется постоянно одна и та же ошибка про скобки пред или после then
0
Модератор
10455 / 5752 / 3409
Регистрация: 17.08.2012
Сообщений: 17,500
05.09.2020, 22:26
Так, для затравки.

Очевидно, что программа должна напечатать строку 'zxwy'.
1
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
05.09.2020, 22:27  [ТС]
Да, все верно.
0
Модератор
10455 / 5752 / 3409
Регистрация: 17.08.2012
Сообщений: 17,500
05.09.2020, 23:37
Лучший ответ Сообщение было отмечено Nyusha5353 как решение

Решение

У Вас в ошибках английским по белому написано: "Error: Incompatible type: got "Boolean" expeted "Longint"". То есть, Вам написали, что типы Boolean и Longint (он же Integer) несовместимы. Ну так, и используйте boolean как boolean, а integer как integer.

Ваша программа для типа boolean:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var
  x, y, z, w: boolean;
begin
  writeln('xyzw');
  for x := false to true do
    for y := false to true do
      for z := false to true do
        for w := false to true do
          if not(x and not y or (y = z) or w) then
            writeln(ord(x), ord(y), ord(z), ord(w));
  readln
end.
Один из вариантов для типа integer:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var
  x, y, z, w: integer;
begin
  writeln('xyzw');
  for x := 0 to 1 do
    for y := 0 to 1 do
      for z := 0 to 1 do
        for w := 0 to 1 do
          if x and (y xor 1) or ord(y = z) or w = 0 then
            writeln(x, y, z, w);
  readln
end.
Добавлено через 16 минут
Программа выдаёт три строки, осталось только столбцы поменять, чтобы получилось так, как по заданию. На самом деле, это случайность, поскольку нигде в задании не написано, что только на этих строках функция равна 0. Строк могло быть и больше. Повезло, короче.

Я правильно понимаю, что программа не соответствует заданию, поскольку должна рассчитывать не какую-то там, пусть даже очень полезную, таблицу истинности, а просто последовательность из четырёх буковок, причём без Вашего участия?
1
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
06.09.2020, 00:11  [ТС]
Задания все одинаковы, но выражения и таблица, в зависимости от задания, меняется. Вообще, данная программа предназначена для вывода только тех строк, которые удовлетворяют условию истина или ложь. Такие задания сейчас на ЕГЭ по информатике, а он, в этом учебном году, проводится на компьютерах. Единственное, что беспокоит, что следования, как логической операции нет в Паскале, остальное описать есть возможность. С двумя следованиями, в логическом выражении, совсем не та таблица истинности выводится, буду пробовать решить. Скорее всего опять где-то проблема с описанием самой функции. Огромное спасибо, что помогли
0
Модератор
10455 / 5752 / 3409
Регистрация: 17.08.2012
Сообщений: 17,500
06.09.2020, 01:48
Лучший ответ Сообщение было отмечено Nyusha5353 как решение

Решение

Цитата Сообщение от Nyusha5353 Посмотреть сообщение
следования, как логической операции нет в Паскале
Это Вы про импликацию? Отчего же нет? Заблуждаетесь.

Пусть A и B - логические переменные или логические выражения. Вот Вам табличка на память:

 В алгебре логикиПаскаль, booleanПаскаль, integer 0/1
Отрицаниеhttps://www.cyberforum.ru/cgi-bin/latex.cgi?\bar{A},\ \neg Anot a, not(a)a xor 1, 1 - a
Конъюнкцияhttps://www.cyberforum.ru/cgi-bin/latex.cgi?A \wedge Ba and ba and b, a * b
Дизъюнкцияhttps://www.cyberforum.ru/cgi-bin/latex.cgi?A \vee Ba or ba or b
Эквиваленция (эквивалентность, равенство)https://www.cyberforum.ru/cgi-bin/latex.cgi?A\leftrightarrow B,\ A\equiv Ba = b, not(a xor b)ord(a = b)
Несоответствие ("исключающее ИЛИ", неравенство)https://www.cyberforum.ru/cgi-bin/latex.cgi?A\oplus Ba xor b, a <> ba xor b, ord(a <> b)
Импликация (прямая импликация, следование)https://www.cyberforum.ru/cgi-bin/latex.cgi?A\rightarrow Ba <= b, not a or bord(a <= b)
Обратная импликацияhttps://www.cyberforum.ru/cgi-bin/latex.cgi?A\leftarrow Ba >= b, a or not bord(a >= b)
Отрицание прямой импликацииhttps://www.cyberforum.ru/cgi-bin/latex.cgi?\bar{A\rightarrow B},\ \neg (A\rightarrow B)a > bord(a> b)
Отрицание обратной импликацииhttps://www.cyberforum.ru/cgi-bin/latex.cgi?\bar{A\leftarrow B},\ \neg (A\leftarrow B)a < bord(a < b)
Штрих Шеффераhttps://www.cyberforum.ru/cgi-bin/latex.cgi?A\,\mid \,Bnot(a and b)1 - (a and b)
Стрелка Пирсаhttps://www.cyberforum.ru/cgi-bin/latex.cgi?A\downarrow Bnot(a or b)1 - (a or b)

Через запятую указаны эквивалентные написания.

Сравнение логических значений с помощью операторов <, >, <=, >=, =, <> не работает в Pascal ABC, поскольку в нём тип boolean порядковым не является.

Если не всё упомянул, пишите в этой теме, дополню табличку.

Добавлено через 11 минут
Да, и для которого выражения не та таблица истинности у Вас выводится?
1
80 / 33 / 10
Регистрация: 14.06.2019
Сообщений: 516
06.09.2020, 08:51
Nyusha5353, а почему все переменные имеют тип integer, а не boolean?
0
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
06.09.2020, 08:54  [ТС]
Можно писать как integer можно как boolean.Эту задачу можно решить с любым из типов, главное правильно описать функцию. Спасибо за помощь, мне уже объяснили и помогли. У меня были проблемы именно с тем, как описать логическую функцию правильно.
0
80 / 33 / 10
Регистрация: 14.06.2019
Сообщений: 516
06.09.2020, 08:59
Мда, потерял вторую страницу текста

Добавлено через 1 минуту
Цитата Сообщение от Cyborg Drone Посмотреть сообщение
а Вы четырьмя никчемными циклами балуетесь
Да я про задание как-то забыл, пытался имеющийся код в рабочее состояние привести
0
Модератор
10455 / 5752 / 3409
Регистрация: 17.08.2012
Сообщений: 17,500
06.09.2020, 09:33
Лучший ответ Сообщение было отмечено Nyusha5353 как решение

Решение

Судя по всему, это и надо было сделать.
0
80 / 33 / 10
Регистрация: 14.06.2019
Сообщений: 516
06.09.2020, 09:53
Cyborg Drone, наверное да.
0
0 / 0 / 0
Регистрация: 05.09.2020
Сообщений: 23
06.09.2020, 11:00  [ТС]
Спасибо всем за помощь. Все задачи теперь решаются и за таблицу отдельное спасибо, так как, наверное, её мне и не хватало.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.09.2020, 11:00
Помогаю со студенческими работами здесь

Простейшие задачи на решение
Нужна 4,5 задачи. Кто умеет решать, помогите, пожалуйста

Решение задачи массивом
К этой теме я приложил файл с условиями задачи. Пожалуйста напишите мне код на самом простом языке всё очень подробно. (что бы было мало...

Написать решение задачи на Pascal
Честное слово, мало разбираюсь в Pascal'е, но дали задание, не учусь на программиста) Помогите плз(2 вложение это на MathCAD'е)

Решение одной и той же задачи разными методами
Условие:Дана последовательность, элементы которой есть целые двузначные числа. Упорядочить последовательность по возрастанию сумм цифр...

Решение задачи о рюкзаке методом динамического программирования
Разбейте задачу на подзадачи и постройте рекуррентное соотношение для вычисления значений подзадач. Определите порядок вычисления...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru