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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2018, 22:36   #1
rypkina
Новичок
Джуниор
 
Регистрация: 02.10.2018
Сообщений: 2
По умолчанию Исправить программы так, чтобы она решала задачу без использования else

Помогите пожалуйста исправить 2 задачи, чтобы решались без слова else


Задача 1

c={a-b/ab, если a>b
{a^b, если a=<b

Код:
Program Lab2a;
Var 
a,b,c:real;
Begin
writeln(‘Введи a,b’);
read(a,b);
if a>b 
then c:=(a-b)/(a*b)
else c:=exp(b*ln(a));
writeln(‘c=’, c:10:3);
End.
Задача 2

c={2, a=0
{3, 1=<a=<10
{4, a=-1 или a=11
{5, иначе

Код:
Program Lab2b;
Var 
a,c:integer;
Begin
read(a);
case a of 
0: c:=2;
1..10: c:=3;
-1,11: c:=4 
else c:=5
end;
writeln(c);
End.

_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 02.10.2018 в 22:45.
rypkina вне форума Ответить с цитированием
Старый 02.10.2018, 22:49   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от rypkina Посмотреть сообщение
Помогите пожалуйста исправить 2 задачи, чтобы решались без слова else
глупость какая. а чем else то помешал? Особенно в первой задаче!

ну, впрочем, держите:
Код:
Program Lab2a;
Var 
a,b,c:real;
Begin
  writeln(‘Введи a,b’);
  read(a,b);
  c := 0;
  if a>b then c:=(a-b)/(a*b);
  if a<=b then  c:=exp(b*ln(a));
  writeln(‘c=’, c:10:3);
End.
Код:
Program Lab2b;
Var 
  a,c:integer;
Begin
  read(a);
  c:=5;
  if a=0 then c:=2;
  if (a>=1) and (a<=10)  c:=3;
  if (a=-1) or (a=11)  c:=4;
  writeln(c);
End.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 02.10.2018, 23:01   #3
rypkina
Новичок
Джуниор
 
Регистрация: 02.10.2018
Сообщений: 2
По умолчанию

Условия лабораторной такие
Спасибо)
rypkina вне форума Ответить с цитированием
Старый 02.10.2018, 23:27   #4
Ottava
Форумчанин
 
Регистрация: 05.09.2017
Сообщений: 157
По умолчанию

Можно просто вынести перед if оператор из else:
Код:
Program Lab2a;
Var 
a,b,c:real;
Begin
writeln(‘Введи a,b’);
read(a,b);
c:=exp(b*ln(a));
if a>b 
then c:=(a-b)/(a*b)
writeln(‘c=’, c:10:3);
End.
Во второй программе - вынести оператор из else и поставить его перед case
Безопасность с Content Security Policy
Ottava вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно исправить программу чтобы она использовала lenght serg.malkow2014 Помощь студентам 1 27.12.2013 11:07
Исправить ошибки в программе чтобы она заработала ben74 Помощь студентам 2 31.01.2012 13:30
Как сделать так чтобы приложение базы данных работала на компьютерах без установленной программы delphi? Даниил_глазко БД в Delphi 6 09.11.2010 16:26