Загрузка...

Помогите понять как решить задание из егэ

Тема в разделе C# создана пользователем Regal1ze 8 июн 2023. 276 просмотров

Загрузка...
  1. Regal1ze
    Regal1ze Автор темы 8 июн 2023 313 12 сен 2021
    Решил я сделать задание из егэ на c# и не могу понять как мне сравнивать true и false
    Задание 2. Задается выражение: ((xy ) ≡ (zw)) ∨ (xw)
    Вроде все знаки понятны:
    ∧ - python (and) ; C# (&&)
    ∨ - python (or) ; C# (||)
    → - python (<=) ; C# (<=)
    ≡ - python (==) ; C# (==)
    Но как мне в C# сравнивать true и false ?
    Сделал какой то код но он не работает. Помогите пожалуйста (Задание)
    Python
    print("x y z w")
    for x in range(0, 2):
    for y in range(0, 2):
    for z in range(0, 2):
    for w in range(0, 2):
    if not (((x <= y ) == (z <= w)) or (x and w)):
    print(x, y, z, w)
    Python
    namespace xz22
    {
    internal class Program
    {
    static void Main(string[] args)
    {

    bool[] int_ = new bool[]{ false,true };
    Console.WriteLine("\tx \ty \tz \tw");
    foreach (var x in int_)
    {
    foreach (var y in int_)
    {
    foreach (var z in int_)
    {
    foreach (var w in int_)
    {
    if (!(x || y) == (z || w) || (x && w));
    Console.WriteLine($"\t{x}\t{y}\t{z}\t{z}");
    }

    }
    }
    }

    }
    }
    }
     
  2. ChatGPT
    ChatGPT 8 июн 2023 2253 14 мар 2023
    Regal1ze, в C# сравнение true и false происходит с помощью операторов == и !=. Например, выражение (x == true) вернет true, если x равен true, и false в противном случае.

    В вашем коде на C# есть ошибка в условии if. У вас есть лишняя точка с запятой после скобки, и выражение должно быть заключено в дополнительные скобки, чтобы правильно определить порядок операций. Попробуйте заменить ваш if-оператор на следующий код:

    Код

    if (!((x || y) == (z || w) || (x && w)))
    Также, в вашем коде вы используете переменную z вместо w в последней строке вывода. Замените z на w, чтобы исправить эту ошибку.
     
    1. Посмотреть предыдущие комментарии (2)
    2. Regal1ze Автор темы
      ChatGPT,
      Логическая функция F задаётся выражением ((xy ) ≡ (zw)) ∨ (xw).
      Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.
      Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z, w.
      Реши на языке C#
    3. ChatGPT
      Regal1ze, для решения этой задачи вам нужно использовать логические операции и таблицу истинности.

      Вы можете перебрать все возможные значения переменных x, y, z, w и проверить, какое значение принимает функция F для каждой комбинации. Затем вы можете сравнить полученные значения с теми, что уже известны из частично заполненного фрагмента таблицы истинности, чтобы определить, какому столбцу соответствует каждая переменная.

      Вот пример кода на C#, который может помочь вам решить эту задачу:

      Код

      using System;

      namespace TruthTable
      {
      class Program
      {
      static void Main(string[] args)
      {
      bool[] x = new bool[] { true, false };
      bool[] y = new bool[] { true, false };
      bool[] z = new bool[] { true, false };
      bool[] w = new bool[] { true, false };

      // Заполненный фрагмент таблицы истинности
      bool[] knownValues = new bool[] { false, true, true, false, true, false };

      // Перебираем все возможные комбинации переменных
      foreach (bool xi in x)
      {
      foreach (bool yi in y)
      {
      foreach (bool zi in z)
      {
      foreach (bool wi in w)
      {
      // Вычисляем значение функции F для текущей комбинации
      bool result = ((xi <= yi) == (zi <= wi)) || (xi && wi);

      // Сравниваем полученное значение с известным значением из фрагмента таблицы истинности
      for (int i = 0; i < knownValues.Length; i++)
      {
      if (knownValues[i] != result)
      {
      continue;
      }

      // Нашли соответствие - выводим результат
      Console.WriteLine($"x = {xi}, y = {yi}, z = {zi}, w = {wi} соответствует столбцу {i + 1}");
      }
      }
      }
      }
      }

      Console.ReadKey();
      }
      }
      }
      Этот код перебирает все возможные комбинации переменных x, y, z, w, вычисляет значение функции F для каждой комбинации и сравнивает полученное значение с известными значениями из фрагмента таблицы истинности. Если значения совпадают, то выводится информация о том, какому столбцу таблицы истинности соответствует каждая переменная.
    4. Regal1ze Автор темы
      ChatGPT, Твой код хуйня как ты блять bool сравниваешь
      Серьезность Код Описание Проект Файл Строка Состояние подавления
      Ошибка CS0019 Оператор "<=" невозможно применить к операнду типа "bool" и "bool". xz22 C:\Users\M\source\repos\les1\xz22\Program.cs 27 Активные
  3. Нищий
    Нищий 8 июн 2023 505 2 мар 2018
    Python
    print("x y z w")
    for x in range(0, 2):
    for y in range(0, 2):
    for z in range(0, 2):
    for w in range(0, 2):
    if not (((x <= y ) == (z <= w)) or (x and w)) == True:
    print(x, y, z, w)
     
    1. Посмотреть предыдущие комментарии (2)
    2. FrenkiPicas
      Нищий, ну я ему отписал, что че он ебется то , пусть все на питоне хуярит
    3. Нищий
      FrenkiPicas, вот именно, на егэ никто не будет смотреть на то, что ты шарп знаешь
    4. FrenkiPicas
      Нищий, ну он вроде уже понял что надо на питоне)
  4. GooseG4G
    GooseG4G 8 июн 2023 99 14 янв 2018
    А -> B = not(A) + B
    Можешь имплицию разложить по формуле
     
    8 июн 2023 Изменено
  5. Нищий
    Нищий 8 июн 2023 505 2 мар 2018
    Кстати в питоне необязательно писать for x in range(0, 2), можно просто for x in range(2) у тебя итак 0 и 1 всего
     
Top