Выполнение третьего комбинированного условия независимо от первых двух.

1. abc4987 05.01.24 16:42 Сейчас в теме
Здравствуйте!
Подскажите, пожалуйста, как можно исправить ситуацию?
К примеру для числа 36 не выполняется условие "Если (Число % 2 = 0) И (Число % 3 = 0) Тогда".

Для Каждого Число Из СлучайныеЧисла Цикл     
        Если Число % 2 = 0 Тогда
            Сообщить("Число " + Строка(Число) + " чётное");
        ИначеЕсли Число % 3 = 0 Тогда    
            Сообщить("Число " + Строка(Число) + " делится на 3");
        Иначе
            Если (Число % 2 = 0) И (Число % 3 = 0) Тогда
                Сообщить("Число " + Строка(Число) + " делится и на 2, и на 3");
            Иначе
                Сообщить("Число " + Строка(Число) + " не подходит ни под одно условие");
            КонецЕсли;    
        КонецЕсли;
    КонецЦикла;
Показать
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 35 05.01.24 17:20 Сейчас в теме
(1)Раз условие никак не связано с первыми двумя, очевидно, убрать его из Иначе, т.к. это независимое условие.
3. abc4987 05.01.24 18:03 Сейчас в теме
(2) Почему не связано?
К примеру есть число 36, которое делится без остатка и на два, и на три, а есть числа, которые без остатка делятся только на два или только на три.
4. Sashares 35 05.01.24 18:16 Сейчас в теме
(3)
Почему не связано?

По логике.
5. abc4987 05.01.24 18:21 Сейчас в теме
(4)Хорошо, может я не понимаю до конца. Подскажите, пожалуйста, к прописать условие, чтобы числа делящиеся без остатка и на два, и на три, сработало?

1. Число 64 без остатка делится только на два.
2. Число 63 без остатка делится только на три.
3. Число 66 без остатка делится и на два, и на три.
6. Sashares 35 05.01.24 18:28 Сейчас в теме
(5)В такой постановке задачи условие проверки деления на 2 и на 3 должно стоять первым.
У вас есть проверка деления на 2, есть проверка деления на 3.
Добавьте в начало еще одну проверку деления на 2 и на 3.
7. user856012 14 05.01.24 18:38 Сейчас в теме
(6)
Добавьте в начало еще одну проверку деления на 2 и на 3.
Не надо ничего добавлять - там все уже есть, надо просто переставить проверки:
Для Каждого Число Из СлучайныеЧисла Цикл
  Если (Число % 2 = 0) И (Число % 3 = 0) Тогда
    Сообщить("Число " + Строка(Число) + " делится и на 2, и на 3");
  ИначеЕсли Число % 2 = 0 Тогда
    Сообщить("Число " + Строка(Число) + " чётное");
  ИначеЕсли Число % 3 = 0 Тогда
    Сообщить("Число " + Строка(Число) + " делится на 3");
  Иначе
    Сообщить("Число " + Строка(Число) + " не подходит ни под одно условие");
  КонецЕсли;
КонецЦикла;
Показать

Как вы и сказали в первом предложении вашего сообщения.

P.S. Ветка - отличная иллюстрация тезиса: "1Сники - не программисты!" ;-)
konsta2006; user1880116; +2 1 Ответить
8. abc4987 05.01.24 18:40 Сейчас в теме
10. Sashares 35 05.01.24 20:25 Сейчас в теме
(7)Угу, вместо того чтобы дать человеку самому дойти наконец до мысли, как исправить, привести готовое решение, а потом кричать, что все тупые. Отличная жизненная позиция. Продолжайте в том же духе.
11. user856012 14 05.01.24 21:00 Сейчас в теме
(10)
дать человеку самому дойти наконец до мысли, как исправить
Да вы, любезнейший, оптимист!

В своих прошлых ветках автор пытается писать запросы... но не понимает элементарной логики работы программы. Какой программист из него получится?
Отличная жизненная позиция. Продолжайте в том же духе.
У вас, похоже, выброс желчи нешуточный? Вы уж поберегите себя... если не ради нас, грешных, так хоть ради авторов подобных веток! :-)

P.S. Не сразу, но все-таки заметил: вчерашняя ветка того же самого автора, сначала вы пытаетесь ему объяснить "как исправить", а спустя неполный час - даете "готовое решение"! Ы?

Ну что тут скажешь? "Отличная жизненная позиция. Продолжайте в том же духе." ;-P
12. user1880116 05.01.24 21:13 Сейчас в теме
(10)
кричать, что все тупые.
А разве он не прав?
9. abc4987 05.01.24 18:41 Сейчас в теме
(6)Да, последнее условие указал первым и сработало. Спасибо!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот