Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2017, 15:14   #1
Jenee
Пользователь
 
Регистрация: 24.02.2017
Сообщений: 20
Вопрос [РЕШЕНО] Условие в паскале

Программа работает не по заданию(( помогите разобраться!
Код:
uses crt;
var a, b, c, d, e:integer;
begin
writeln('Распознование удобрений');
writeln('1-да,0-нет');
writeln('При взаимодействии с H2SO4 выделяется бурый газ?'); readln(a);
if a=1 then writeln('При взаимодействии с щёлочью есть запах аммиака?'); readln(b);
if b=1 then writeln('Аммиачная селитра') else if b=0 then writeln('Натриевая селитра');
if a=0 then writeln('При взаимодействии с BaCl2 есть белый осадок?'); readln(c);
if c=1 then writeln('При взаимодействии с щёлочью есть запах аммиака?'); readln(d);
if d=1 then writeln('Сульфат аммония') else if d=0 then writeln('Суперфосфат');
if c=0 then writeln('Есть розовые кристаллы?'); readln(e);
if e=1 then writeln('Cильвинит') else if e=0 then writeln('Калийная соль');
end.
Решение в следующем сообщении
Изображения
Тип файла: jpg img1.jpg (121.2 Кб, 129 просмотров)

Последний раз редактировалось Вадим Мошев; 12.05.2018 в 13:08.
Jenee вне форума Ответить с цитированием
Старый 02.05.2017, 15:33   #2
alexander13
Форумчанин
 
Аватар для alexander13
 
Регистрация: 07.02.2013
Сообщений: 267
По умолчанию

Потому что логические блоки неправильно организованы. Надо как-то так (если я в синтаксисе паскаля нигде не ошибся):
Код:
uses crt;
var a, b, c, d, e:integer;
begin
writeln('Распознование удобрений');
writeln('1-да,0-нет');
writeln('При взаимодействии с H2SO4 выделяется бурый газ?'); readln(a);

if a=1 then begin
    writeln('При взаимодействии с щёлочью есть запах аммиака?'); 
    readln(b);
    
    if b=1 then 
        writeln('Аммиачная селитра') 
    else 
        writeln('Натриевая селитра');
end else begin
    writeln('При взаимодействии с BaCl2 есть белый осадок?'); 
    readln(c);
    
    if c=1 then begin 
        writeln('При взаимодействии с щёлочью есть запах аммиака?'); 
        readln(d);

        if d=1 then 
            writeln('Сульфат аммония') 
        else 
            writeln('Суперфосфат');
    end  else begin
        writeln('Есть розовые кристаллы?'); 
        readln(e);
        
        if e=1 then 
            writeln('Cильвинит') 
        else 
            writeln('Калийная соль');
    end;
end;

end.
Μολὼν λαβέ
alexander13 вне форума Ответить с цитированием
Старый 02.05.2017, 15:42   #3
Jenee
Пользователь
 
Регистрация: 24.02.2017
Сообщений: 20
По умолчанию

СПАСИБО ОГРОМНОЕ!!!
Jenee вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Условие в паскале Jenee Помощь студентам 1 04.05.2017 08:38
[РЕШЕНО]: Ошибка в Header. andrey447 PHP 2 13.03.2017 13:03
Условие в PHP - Не работает условие: не выводит сообщение. Ave_Ave_Ave PHP 13 17.06.2016 12:20