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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2012, 09:45   #1
РОзочка_))
Пользователь
 
Регистрация: 03.06.2012
Сообщений: 16
По умолчанию вопросы по паскалю

помогите пожалуйста на вопросы ответить
1)Что будет записано в элементе A[7] в результате выполнения следующего цикла: for i:=1 to 7 do begin
j:=i+1; A[j]:=i end; если перед этим все элементы цикла были очищены и количество элементов массива –
20?
2)Что будет записано в элементе A[5] в результате выполнения следующего цикла: for i:=1 to 7 do begin
j:=j+1; A[i]:=j end; если перед этим все элементы цикла были очищены и количество элементов массива –
20
3)Что будет записано в элементе A[4] в результате выполнения следующего цикла: i:=1; for j:=1 to 9 do
begin i:=j-i; A[j]:=i+j end; если перед этим все элементы цикла были очищены и количество элементов
массива – 20?
4)Что будет записано в элементе A[3] в результате выполнения следующего цикла: i:=1; for j:=1 to 9 do
begin i:=j-i; A[j]:=i+j end; если перед этим все элементы цикла были очищены и количество элементов
массива – 20?
5)Что будет записано в элементе A[3] в результате выполнения следующего цикла: i:=0; for j:=1 to 9 do
begin i:=j-i; A[j]:=i+j end; если перед этим все элементы цикла были очищены и количество элементов
массива – 20?
6)Что будет записано в элементе A[3] в результате выполнения следующего цикла: for i:=1 to 7 do begin
j:=i+1; A[j]:=i end; если перед этим все элементы цикла были очищены и количество элементов массива –
20?
РОзочка_)) вне форума Ответить с цитированием
Старый 03.06.2012, 11:04   #2
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
По умолчанию

Вопрос 1, В том случае, если i=6, то J=7, что нам и нужно, так получается то что A[7]=6, но зачем создавать 20 элементов массива??

Вопрос 2, Если нам нужно что бы i был равен , то цикл будет выполнен 5 раз, то есть на первом цикле j будет ровно 1, на 5-том будет равно 5

Я посмотрел, все остальные задачи аналогичны
"Никогда программы не содержат так мало ошибок, как при отсутствии каких-либо средств отладки."
Никлаус Вирт... Помог нажми на весы
zhenka619 вне форума Ответить с цитированием
Старый 03.06.2012, 11:23   #3
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

в 1), 2) и 6) ответ зависит от начального значения переменной j, которое нигде не указано

http://ideone.com/3K4fZ
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 03.06.2012, 11:35   #4
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
Радость

Цитата:
Сообщение от veniside Посмотреть сообщение
в 1), 2) и 6) ответ зависит от начального значения переменной j, которое нигде не указано
Но если не сказано, то значит оно равно нулю
Код:
Например 
 programm test
 uses crt;
 var 
 i:integer
    begin
      writeln(i);
      readln;
    end;
"Никогда программы не содержат так мало ошибок, как при отсутствии каких-либо средств отладки."
Никлаус Вирт... Помог нажми на весы

Последний раз редактировалось zhenka619; 03.06.2012 в 12:01.
zhenka619 вне форума Ответить с цитированием
Старый 03.06.2012, 11:45   #5
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

а кто сказал, что цикл прогоняется в самом начале программы? если циклы выполняются один за одним, в j там может быть что угодно.

Кстати, условие "все элементы цикла были очищены" не поленились указать, хотя в данных задачах оно абсолютно никак не влияет на результат.

Походу, задачи составлял лаборант-неудачник )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 03.06.2012, 11:58   #6
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
По умолчанию

Цитата:
Сообщение от veniside Посмотреть сообщение
а кто сказал, что цикл прогоняется в самом начале программы? если циклы выполняются один за одним, в j там может быть что угодно.

1)
for i:=1 to 7 do
begin
j:=i+1; A[j]:=i
end;
Ну логично что это тело программы, тогда, i в самом начале равно 1 т.к по условию for i=1 to 7 дальше цикл, 7 раз проходит, на 1 цикле j равно 2, на втором 3 , и почему в j может быть что угодно, какие угодно значения j не может принимать т.к j зависит от i , а i изменяется строго по правилам!
"Никогда программы не содержат так мало ошибок, как при отсутствии каких-либо средств отладки."
Никлаус Вирт... Помог нажми на весы

Последний раз редактировалось zhenka619; 03.06.2012 в 12:00.
zhenka619 вне форума Ответить с цитированием
Старый 03.06.2012, 12:36   #7
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> логично что это тело программы

не вижу логики. С таким же успехом это может быть и процедура.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 03.06.2012, 12:43   #8
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
По умолчанию

j не может принимать т.к j зависит от i , а i изменяется строго по правилам!
Помоему здесь все понятно.
"Никогда программы не содержат так мало ошибок, как при отсутствии каких-либо средств отладки."
Никлаус Вирт... Помог нажми на весы
zhenka619 вне форума Ответить с цитированием
Старый 03.06.2012, 12:48   #9
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

а, дейсвительно, чё-то я поспешил
тогда с 1) и 6) все ок, неопределенность только в пункте 2)
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 03.06.2012, 13:02   #10
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
По умолчанию

2)Что будет записано в элементе A[5] в результате выполнения следующего цикла: for i:=1 to 7 do begin
j:=j+1; A[i]:=j end; если перед этим все элементы цикла были очищены и количество элементов массива –20

Но какая здесь неопределенность??? если все очищено то j равно 0, в 1 цикле j будет равно 1 во втором 2, в седьмом 7, получается что A[7]=7.
"Никогда программы не содержат так мало ошибок, как при отсутствии каких-либо средств отладки."
Никлаус Вирт... Помог нажми на весы
zhenka619 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 задачки по паскалю Tol-333 Паскаль, Turbo Pascal, PascalABC.NET 10 23.01.2012 19:54
задача по паскалю.. turik1303 Паскаль, Turbo Pascal, PascalABC.NET 9 24.02.2011 17:57
по паскалю евгения, Помощь студентам 22 18.02.2011 13:44
Вопросы по Паскалю обьясните КОД Tik-Tik Паскаль, Turbo Pascal, PascalABC.NET 17 12.02.2009 10:18
По Паскалю! nur Паскаль, Turbo Pascal, PascalABC.NET 5 10.05.2007 06:22