Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ Определить по фрагменту программы, что будет выведено на экран

Автор: Mosvit 20.07.2007 23:13

Такое вот задание:
По фрагментам программы опредлить что будет выведено на экран
10 For I=1 to 3 step 2
20 S=4
30 For J=1 to 2
40 S=S-J+I
50 If S>8 then 90
60 next J
70 Print S
80 Next I
90 Print I,J,S

Объясните пожалуйста с объяснением что выведиться на экран, и ещё , что значят переменые for to next print (что они делают?)

--------------------------------------------------

И ещё заодно один пример может решите?
Сравнить пары чисел, заданные в различных системах счисления и сложить их в двочной системе с точностью до четырёх знаков в дробной части (-69.3)10 и (-39.7)16
Отбрость в двоичном представлеии дробную часть, провести выравниввание и выполнить побитовое логическое умножение.

Знаю, этот вопрос не совсем по теме, но может поможете?

Заранее всем спасибо!!!

Автор: compiler 20.07.2007 23:29

Цитата(Mosvit @ 20.07.2007 19:13) *
По фрагментам программы опредлить что
Я могу определить по фрагментам программы что либо это не паскаля-видный язык(думаю Бэйсик) либо ты забыл сказать что используешь макросы гденибудь(ведь всю программу мы не видим)...

Автор: Mosvit 20.07.2007 23:57

Да это Бэйсик, но нам в инситуте сказали что каждый бует решть н том языке на котором он в школе учился, пэтому я подумал что Бэйсик и Паскаль похожи.
---
А по второму вопросу никаких соображений?

Автор: мисс_граффити 21.07.2007 22:24

Цитата
переменые for to next print

это не переменные.
for .. to...
next ..
это цикл.

print - это вывод данных.

то есть твоя программка в переводе на русский:
Код
10 для i от 1 до 3 с шагом 2 {То есть будет использовано 2 значения: i=1 и i=3}
20 s=4
30 для J от 1 до 2 {шаг не указан, значит, он будет равен 1. то есть j=1, а потом j=2}
40 s=s-j+i
50 если s>8, то переходим на 90-ю строку
60 следующее значение j
70 печатать s
80 следующее i
90 печатать i,j,s


начинаем разбирать.
сначала
10 i=1
20 s=4
30 j=1
40 s=4-1+1=4
50 s не больше 8, поэтому идем на строку 60
60 j=2
30 выходить из цикла еще рано...
40 s=4-2+1=3
50 s не больше 8, поэтому идем на строку 60
60 j=3
30 выходим из этого цикла (j уже больше 2)
70 печатаем s (3)
80 i=3
10 выходить из цикла еще рано...
ну и так далее. сам разберешься, что дальше.

Автор: compiler 21.07.2007 23:21

Ребята, что вы делаете?
берете Microsoft QB(или аналог), набираем 9 строк и нажимая F10 пошагово проганяем(всего чуть более двадцати шагов)...
результат 3 7 3 7

Автор: мисс_граффити 21.07.2007 23:54

blink.gif уверен, что такой результат?

Автор: xds 22.07.2007 8:54

Microsoft Quick Basic 4.0

Код
3
7
5             3             7

Автор: compiler 22.07.2007 18:08

а я пятерку не перепечатал unsure.gif ...