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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 21.09.2013, 14:25   #1
mishammm
Форумчанин
 
Регистрация: 21.09.2013
Сообщений: 232
По умолчанию Помогите исправить код паскаля

Задание: Выбрать и напечатать число S=max(a,min(c,b)). l , k обчислить по формулам на картинке. Мы должны ввести k,l где k - номер группы , l - номер варианта
Вот сам код:

Program pr1
var
a,b,c:real;
l,k: integer;
max,min: real;
begin
Writeln('VVedi l');
Readln(l);
Writeln('VVedi k');
Readln(k)
a:= (l - 3*k) - 5;
b:=( l + 2) / l;
с:= (l* k) -10;
If (c<b)>a) then max:=min else max:=a
Writeln('S=' , max:0:2);
Readln
End.

Мне не нравиться что оно выводит число 1.02 постоянно! Где может быть ошибка?
Изображения
Тип файла: jpg Снимок.jpg (16.7 Кб, 117 просмотров)
Тип файла: png Снимок2.PNG (2.3 Кб, 69 просмотров)
mishammm вне форума
Старый 21.09.2013, 15:02   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

На картинке для a одно, в программе вычисляется другое. А следующее не должно даже компилироваться
Код:
If (c<b)>a) then max:=min else max:=a
Можно заменить эту непонятку на
Код:
if c<b then max:=c else max:=b;
if max<a then max:=a;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума
Старый 21.09.2013, 15:16   #3
mishammm
Форумчанин
 
Регистрация: 21.09.2013
Сообщений: 232
По умолчанию

вот что выходит
Изображения
Тип файла: jpg 1.jpg (31.7 Кб, 113 просмотров)
Тип файла: jpg 2.jpg (16.9 Кб, 117 просмотров)
mishammm вне форума
Старый 21.09.2013, 15:18   #4
unbanned
Форумчанин
 
Аватар для unbanned
 
Регистрация: 23.11.2010
Сообщений: 530
По умолчанию

если я правильно понял то можно вообще min и max убрать...
Код:
var
  a, b, c: real;
  l, k: integer;

begin
  writeln('Type l:'); 
  write('l = '); readln(l); 
  writeln('Type k:'); 
  write('k = ');readln(k); 
  a := (2 * l - 3 * k) / 5; 
  b := (l + 2) / l; 
  c := (l * k) - 10; 
  
  if c < b then
  
    if a > c then writeln('S = ', a:0:4)
    else
      writeln('S = ', c:0:4)
      
  else 
  
    if a > b then writeln('S=', a:0:4)
    else
      writeln('S = ', b:0:4);  
    
  readln;
end.

Последний раз редактировалось unbanned; 21.09.2013 в 15:56.
unbanned вне форума
Старый 21.09.2013, 15:18   #5
unbanned
Форумчанин
 
Аватар для unbanned
 
Регистрация: 23.11.2010
Сообщений: 530
По умолчанию

нечаянно продублировал
unbanned вне форума
Старый 21.09.2013, 15:24   #6
mishammm
Форумчанин
 
Регистрация: 21.09.2013
Сообщений: 232
По умолчанию

не препод сказал что нужно чтобы было min , max эт обязательно
mishammm вне форума
Старый 21.09.2013, 15:29   #7
unbanned
Форумчанин
 
Аватар для unbanned
 
Регистрация: 23.11.2010
Сообщений: 530
По умолчанию

эмм... ну тогда...
Код:
var
  a, b, c: real;
  l, k: integer;
  min, max: real;

begin
  writeln('Type l:'); 
  write('l = '); readln(l); 
  writeln('Type k:'); 
  write('k = ');readln(k); 
  a := (2 * l - 3 * k) / 5; 
  b := (l + 2) / l; 
  c := (l * k) - 10; 
  
  if c < b then  
    min := c
  else
    min := b;
    
  if a > min then max := a
  else
    max := min;
    
  writeln('S=', max:0:4);  
  readln;
end.

Последний раз редактировалось unbanned; 21.09.2013 в 15:57.
unbanned вне форума
Старый 21.09.2013, 15:34   #8
mishammm
Форумчанин
 
Регистрация: 21.09.2013
Сообщений: 232
По умолчанию

эххх.... ((((
ввел например 89 и 100 то то же самое
Изображения
Тип файла: jpg 1.jpg (31.6 Кб, 124 просмотров)
Тип файла: jpg 2.jpg (17.2 Кб, 113 просмотров)
mishammm вне форума
Старый 21.09.2013, 15:39   #9
unbanned
Форумчанин
 
Аватар для unbanned
 
Регистрация: 23.11.2010
Сообщений: 530
По умолчанию

а что вас смущает? введите другие числа получите другой ответ...
Цитата:
Type l:
l = 1
Type k:
k = 55
S=3.0000

Type l:
l = 15
Type k:
k = 11
S=1.1333

Type l:
l = 55
Type k:
k = 1
S=47.0000


Type l:
l = 100
Type k:
k = 98
S=1.0200

Последний раз редактировалось unbanned; 21.09.2013 в 15:43.
unbanned вне форума
Старый 21.09.2013, 15:40   #10
mishammm
Форумчанин
 
Регистрация: 21.09.2013
Сообщений: 232
По умолчанию

должно ли быть 1.02 ?? )) вот за что я переживаю )))
mishammm вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить код. djon_limit Общие вопросы C/C++ 3 13.12.2009 15:43
помогите исправить код Карол Помощь студентам 2 29.10.2009 16:47
Помогите исправить код Grizzzli Помощь студентам 3 14.12.2008 19:26
Помогите исправить код Tanuska___:) БД в Delphi 4 07.08.2008 17:40