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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2015, 15:33   #1
Egoist24Rus
Новичок
Джуниор
 
Регистрация: 20.05.2015
Сообщений: 3
По умолчанию Основы программирования

ребята помогите с задачей. правильно ли я ее сделал. посмотрите.

Определить значение переменной y после работы следующего фрагмента программы:
a = 14; b = a / 7 + 10; x = 1; y = b / 3 + x;
if (2 * b > 5 * y ) or ( b < a – 3 ) ) then begin x = y – 2; y = x * 3 end;
if ( a > b / 3 + 5 ) and ( 2 * y > b ) ) then begin x = x – 1; y = x + y end;

Ход решения:
a=14 ; b=12 ; x=1 ;y=5
(2 * b >5 * y) = (2 * 12 > 5 *5 )= 24 > 25 = False
(b < a – 3) = (12 < 14 – 3) = 12 < 11 = False
( 2 * b >5 * y ) or ( b < a – 3 ) = False
x= 5 – 2 = 3
y= 3 * 3 = 9
ответ y=9
Egoist24Rus вне форума Ответить с цитированием
Старый 20.05.2015, 15:59   #2
Niro
Форумчанин
 
Аватар для Niro
 
Регистрация: 23.09.2010
Сообщений: 682
По умолчанию

Цитата:
( 2 * b >5 * y ) or ( b < a – 3 ) = False
раз это false, то зачем вы выполняете
Цитата:
begin x = y – 2; y = x * 3 end;
??? Не надо, тут икс и игрек - без изменений

Цитата:
if ( a > b / 3 + 5 ) and ( 2 * y > b ) ) then begin x = x – 1; y = x + y end;
тут второе условие - ложно, т.к. у нас в if операция and (логич. И, результат которого истинен, когда
оба выражения истины), то и тут, не надо делать
Цитата:
begin x = x – 1; y = x + y end;
так что икс = 1 игрек = 5
Проще всего признать свою ошибку.
Гораздо труднее еЁ осознать и исправить.
Niro вне форума Ответить с цитированием
Старый 20.05.2015, 16:07   #3
Egoist24Rus
Новичок
Джуниор
 
Регистрация: 20.05.2015
Сообщений: 3
По умолчанию

получаеться вот так вот правильно будет.
Ход решения:
a=14 ; b=12 ; x=1 ;y=5
(2 * b >5 * y) = (2 * 12 > 5 *5 )= 24 > 25 = False
Ответ y=5
Egoist24Rus вне форума Ответить с цитированием
Старый 20.05.2015, 16:17   #4
Niro
Форумчанин
 
Аватар для Niro
 
Регистрация: 23.09.2010
Сообщений: 682
По умолчанию

Цитата:
if <условие> then begin [выполняем если условие истинно] end
else begin [выполняем если условие ложно] end;
Код:
if (2 * b > 5 * y ) or ( b < a – 3 ) ) then begin x = y – 2; y = x * 3 end;
первая скобка - ложна
вторая скобка - ложна
т.к. они обе ложны - значит то что между "бегином... эндом" - не выполняем,
сразу переходим к второму "Ифу"
Проще всего признать свою ошибку.
Гораздо труднее еЁ осознать и исправить.
Niro вне форума Ответить с цитированием
Старый 20.05.2015, 16:24   #5
Egoist24Rus
Новичок
Джуниор
 
Регистрация: 20.05.2015
Сообщений: 3
По умолчанию

глянь а вот сейчас надеюсь правильно все понял и сделал?

Определить значение переменной y после работы следующего фрагмента программы:
a = 14; b = a / 7 + 10; x = 1; y = b / 3 + x;
if (2 * b > 5 * y ) or ( b < a – 3 ) ) then begin x = y – 2; y = x * 3 end;
if ( a > b / 3 + 5 ) and ( 2 * y > b ) ) then begin x = x – 1; y = x + y end;


Ход решения:
a=14 ; b=12 ; x=1 ;y=5
(2 * b >5 * y) = (2 * 12 > 5 *5 )= 24 > 25 = False
(b < a – 3) = (12 < 14 – 3) = 12 < 11 = False
( 2 * b >5 * y ) or ( b < a – 3 ) = False

( a > b / 3 + 5 ) = ( 14 > 12 / 3 + 5 ) = 14 > 9 =True
( 2 * y > b ) = ( 2 * 5 > 12 ) = 10 > 12 = False
(a > b / 3 + 5 ) and (2 * y > b )= false
x = 1
y = 5
Ответ : y = 5.

вот вроде так теперь уже.

Последний раз редактировалось Egoist24Rus; 20.05.2015 в 16:32.
Egoist24Rus вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пролог. Основы программирования vzik Помощь студентам 0 23.03.2013 17:08
Основы программирования Изя Прогер Помощь студентам 0 13.10.2012 17:20
Основы программирования Анна К. Помощь студентам 5 29.06.2012 15:45
Основы программирования. Учебник. -KAZtrel- Помощь студентам 7 04.06.2011 18:15
основы программирования ArniLand Свободное общение 12 19.02.2011 19:00