Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 09.11.2018, 10:00   #1
илья-т
Пользователь
 
Регистрация: 09.11.2018
Сообщений: 10
Репутация: 10
По умолчанию Бак от IJust 2

Определите значение переменной m после выполнения следующего фрагмента программы:

Код:

m:=0;
for i:=1 to 10 do
begin
n:=i+2;
if n>10
then m:=n+m*2
else m:=m+1;
end;

помогите пожалуйста
в ответе 66 а у меня не так

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

Последний раз редактировалось Serge_Bliznykov; 09.11.2018 в 10:23.
илья-т вне форума   Ответить с цитированием
Старый 09.11.2018, 10:34   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,505
Репутация: 5308
По умолчанию

Вы бы отформатировали сначала код
Код:

program ideone;
var n,m,i:integer;
begin
	m:=0;
	for i:=1 to 10 do
	begin
    		n:=i+2;
	    	if n>10
    			then m:=n+m*2
    			else m:=m+1;
	end;
	writeLn(m)
end.

в ответе будет 66 - пруф - https://ideone.com/w3UNaj

Цитата:
Сообщение от илья-т Посмотреть сообщение
у меня не так
скорее всего Вы не учитываете, что вычисление m производится ВНУТРИ цикла
т.е.
первая итерация
i=1
n:=i+2; // n становится равным 3
if n>10 // условие не выполняется
else m:=m+1; // m становится 1

цикл 2
i=2
n:=i+2; // n становится равным 4
if n>10 // условие не выполняется
else m:=m+1; // m становится 2
и т.д.
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 09.11.2018, 10:59   #3
илья-т
Пользователь
 
Регистрация: 09.11.2018
Сообщений: 10
Репутация: 10
По умолчанию

Определите значение переменной m после выполнения следующего фрагмента программы:

m:=0;
for i:=1 to 10 do
begin
n:=i+2;
if n>10
then m:=n+m*2
else m:=m+1;
end;

не получается
помогите
илья-т вне форума   Ответить с цитированием
Старый 09.11.2018, 11:00   #4
Black Fregat
Программист
Профессионал
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,070
Репутация: 754
По умолчанию

Первые 8 итераций будет выполняться ветка else, в результате m = 8.
Потом
8 * 2 + 11 = 27
27 * 2 + 12 = 66
Black Fregat вне форума   Ответить с цитированием
Старый 09.11.2018, 11:41   #5
digitalis
Профессионал
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Адрес: Минск
Сообщений: 1,033
Репутация: 392
По умолчанию

Бляха-муха, сказали ему: форматируй код, объяснили ход решения - все равно тупо копипастит свой начальный код. Вставь в цикле перед end
Код:

writeln (i,n,m );

- будешь видеть весь ход процесса.
И где тут бак ?
Изображения
Тип файла: jpg tupoy.JPG (3.0 Кб, 14 просмотров)
Тип файла: jpg Бак.JPG (3.9 Кб, 14 просмотров)

Последний раз редактировалось digitalis; 09.11.2018 в 11:56.
digitalis вне форума   Ответить с цитированием
Старый 09.11.2018, 11:50   #6
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,505
Репутация: 5308
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
будешь видеть весь ход процесса.
видеть - это не значит понимать
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 09.11.2018, 12:00   #7
илья-т
Пользователь
 
Регистрация: 09.11.2018
Сообщений: 10
Репутация: 10
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Бляха-муха, сказали ему: форматируй код, объяснили ход решения - все равно тупо копипастит свой начальный код. Вставь в цикле перед end
Код:
я учусь в 9 классе и мы только начали проходить паскаль
решаем все письменно в тетради
поэтому не сразу понял ход решения
илья-т вне форума   Ответить с цитированием
Старый 09.11.2018, 12:04   #8
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,505
Репутация: 5308
По умолчанию

Цитата:
Сообщение от илья-т Посмотреть сообщение
я учусь в 9 классе и мы только начали проходить паскаль
понятно.


Цитата:
Сообщение от илья-т Посмотреть сообщение
решаем все письменно в тетради
в тетради тем более надо записывать код с отступами, форматировать его, чтобы было видно, какой блок кода (операторы) к чему относится.


Цитата:
Сообщение от илья-т Посмотреть сообщение
поэтому не сразу понял ход решения
не сразу, но всё таки понял?

а я вот не понял, что означает "Бак от IJust 2"...
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 09.11.2018, 12:10   #9
илья-т
Пользователь
 
Регистрация: 09.11.2018
Сообщений: 10
Репутация: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
а я вот не понял, что означает "Бак от IJust 2"...
я только сегодня зарегистрировался
и случайно заголовок не тот напечатался вот так
илья-т вне форума   Ответить с цитированием
Старый 09.11.2018, 12:21   #10
digitalis
Профессионал
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Адрес: Минск
Сообщений: 1,033
Репутация: 392
По умолчанию

Ну тогда учись. Выучишься - программистом станешь, не выучишься - начальником будешь.
А изучать Паскаль "в тетрадке", без компа - все равно, что... ну ладно, не буду мо'лодежь развращать.

Последний раз редактировалось digitalis; 09.11.2018 в 12:23.
digitalis вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
можно ли восстановить бак файлы Анастасия123456789 Помощь студентам 0 22.04.2009 13:28


11:38.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru