С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
 Аватар для chdanil
2 / 1 / 1
Регистрация: 20.06.2018
Сообщений: 31

Найти число, отличающееся от других чисел

20.11.2018, 21:35. Показов 3235. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var a, b, c, d:integer;
begin
readln(a, b, c, d);
 
if a=b then 
  if c=a then 
    writeln(d) 
  else if c<>a then 
    writeln(c)
else if a<>b then  
  if a=c then 
    writeln(b) 
  else if a<>c 
    then writeln(a)
end.
//не проходит 1 2 2 2
//и  2 1 2 2
найти среди четырех этих товарищей чиселко, которое отличается от других. Помогите понять ИМЕННО МОЮ ОШИБКУ! у 1 2 2 2 и 2 1 2 2 вообще нет вывода....
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.11.2018, 21:35
Ответы с готовыми решениями:

Получить число к, отличающееся от n обратным порядком следования цифр
Дано пятизначное число n. Получить число к, отличающееся от n обратным порядком следования цифр. Нужно как-то с использованием циклов.

Найти число, которое отлично от трех других, равных между собой
Даны 4 целых числа,одно из которых отлично от трех других равных между собой. Вывести порядковый номер этого числа. ВОобще без понятия как...

Найти число, которое отлично от трех других, равных между собой
Известно, что из четырех чисел a1, а2, a3 и а4 одно отлично от трех других, равных между собой; присвоить номер этого числа переменной п.

9
 Аватар для Mikstereo
98 / 36 / 18
Регистрация: 05.11.2018
Сообщений: 231
20.11.2018, 22:55
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var a,b,c,d:integer;
begin
  readln(a,b,c,d);
  if (a<>b) and (a<>c) and (a<>d) 
    then writeln(a) 
 else
  if (b<>a) and (b<>c) and (b<>d) 
    then writeln(b) 
 else
  if (c<>b) and (c<>a) and (c<>d) 
    then writeln(c) 
 else
  if (d<>b) and (d<>c) and (d<>a) 
    then writeln(d);
end.
Те условия,которые вы проверяете,не гарантируют что четвертое число не равно одному из предидущих.Мое решение довольно корявое,можно с помощью каких-нибудь модулей сделать красивее.Как отправная точка пойдет.
1
Модератор
10379 / 5666 / 3399
Регистрация: 17.08.2012
Сообщений: 17,308
21.11.2018, 12:03
chdanil, не все условия учтены. Если полностью, то так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var
  a, b, c, d: integer;
 
begin
  readln(a, b, c, d);
  if (a <> b) and (b = c) and (b = d)
    then writeln(a)
    else if (b <> c) and (a = c) and (a = d)
      then writeln(b)
      else if (c <> d) and (a = b) and (a = d)
        then writeln(c)
        else if (c <> d) and (a = b) and (a = c)
          then writeln(d)
          else writeln('Нет решения');
  readln
end.
0
 Аватар для chdanil
2 / 1 / 1
Регистрация: 20.06.2018
Сообщений: 31
21.11.2018, 20:00  [ТС]
спасибо, просто по условию алгоритм должен выполнять не более 2 операций сравнения... извините, что забыл сказать. На python работает, но надо на паскале, учитывая уровень(учитывается, что я не знаю массивы, циклы и прочую ересь)
0
 Аватар для Mikstereo
98 / 36 / 18
Регистрация: 05.11.2018
Сообщений: 231
21.11.2018, 20:41
Цитата Сообщение от chdanil Посмотреть сообщение
не более 2 операций сравнения
Одна операция сравнения: один вывод переменной.Если в 2 операции, то придется использовать сложные конструкции языка, например, массивы.
0
 Аватар для chdanil
2 / 1 / 1
Регистрация: 20.06.2018
Сообщений: 31
21.11.2018, 21:00  [ТС]
Цитата Сообщение от Mikstereo Посмотреть сообщение
Одна операция сравнения: один вывод переменной.Если в 2 операции, то придется использовать сложные конструкции языка, например, массивы.
вы разбираетесь в PYTHON? Я могу скинуть вам удачный код на нем
0
 Аватар для Mikstereo
98 / 36 / 18
Регистрация: 05.11.2018
Сообщений: 231
21.11.2018, 21:17
Цитата Сообщение от chdanil Посмотреть сообщение
вы разбираетесь в PYTHON?
Немного.

Добавлено через 4 минуты
Цитата Сообщение от chdanil Посмотреть сообщение
один вывод переменной
Оговорка,если else не считается,тогда возможно.Создадим условие,которое даст нам одно число,если оно не выполнилось одно из предыдущих условий выводим другую переменную.И так 2 условия.При должном желании можно сделать так чтобы в else не было никаких условий.
0
 Аватар для chdanil
2 / 1 / 1
Регистрация: 20.06.2018
Сообщений: 31
21.11.2018, 22:14  [ТС]
Немного.

Добавлено через 4 минуты
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a=int(input())
b=int(input())
c=int(input())
d=int(input())
 
if a==b:
    if c==a:
        print(d)
    else:
        print(c)
else:
    if a==c:
        print(b)
    else:
        print(a)
Вот, это напоминает задачу с ложной монетой. На python вроде все норм, алгоритм тот же, это еще 1 причина ненавидеть паскаль?
0
 Аватар для Mikstereo
98 / 36 / 18
Регистрация: 05.11.2018
Сообщений: 231
21.11.2018, 22:27
Цитата Сообщение от chdanil Посмотреть сообщение
На python вроде все норм
У вас 3 условия а не два.Ваш алгоритм тоже не пойдет по вашему условию.
А в вашем коде на паскале так условий еще больше!

Добавлено через 3 минуты
Так.Вот ваш код на паскале.Если что можете print заменить на write/writeln.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var a,b,c,d:integer;
begin
  readln(a,b,c,d);
if a=b then 
    if c=a then 
        print(d)
    else
        print(c)
else
    if a=c then
        print(b)
    else
        print(a);
end.
1
Модератор
10379 / 5666 / 3399
Регистрация: 17.08.2012
Сообщений: 17,308
21.11.2018, 22:40
Лучший ответ Сообщение было отмечено chdanil как решение

Решение

Лучше знать несколько языков программирования, причём полностью. А то у Вас как-то нелогично получается: питон знаю, поэтому он хороший, а паскаль не знаю, и это ещё одна причина ненавидеть паскаль.

Перевод на паскаль:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var
  a, b, c, d: integer;
 
begin
  readln(a, b, c, d);
  if a = b
    then if c = a
      then writeln(d)
      else writeln(c)
    else if a = c
      then writeln(b)
      else writeln(a)
end.
Добавлено через 4 минуты
О, пока писал, уже ответили... Mikstereo, форматирование кода у Вас такое, что ни дать, ни взять - питон. Надо было бы и мне такое же форматирование применить... Для ясности.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.11.2018, 22:40
Помогаю со студенческими работами здесь

Нужно найти 3 число отличное от двух других
Данны 3 числа. известно что 2 из них равны, а 3 отлично от них. Решить задачу с помощью программы Pascal ABC!!! Нужно найти 3 число...

Составить восьмизначное число из цифр 8 других восьмизначных чисел
Используя цикл for составить 8-значное число из цифр других 8 8-значных чисел. Формат входных данных 8 целых положительных чисел...

Сгенерировать 30 чисел и найти пару чисел, расстояния между которыми больше чем у других
Нужно написать программу. Сгенерировать 30 чисел и найти пару чисел расстояния между которыми больше чем у других т.е. n1=2,n2=3,...

Найти число отличное от других
Известно, что из четырех чисел a1, a2, a3, a4 одно отлично от трех других, равных между собой. Присвоить номер Помогите нужно...

Найти число отличное от трех других
Даны четыре целых числа, которые ввели с клавиатуры, одно из которых отлично от трех других, равных между собой. Вывести порядковый номер...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru