Объясните, пожалуйста, как это решать.

0 голосов
27 просмотров

Объясните, пожалуйста, как это решать.


image
image

Информатика (180 баллов) | 27 просмотров
0

Здравствуй! Есть const P=1; i=3 затем объявляй переменные внимание одну и туже переменную объявлять нельзя const P=1; var P:=1; так делать нельзя потому что есть область видимости если

0

определена переменная константой значит в объявление не нужно должен быть begin i:=i+1 while do begin только end должно быть два первый end; второй end. так как используются два begin есть типы данных целочисленный-integer, логический-boolean, string-строковый. Только если делишь то нужно использовать real дробный тип div-деление целочисленно

0

в первую очередь нужно понять как работает цикл while

0

i>7 подставляем получится Лучше всего разные переменные если S используется уже они присвоена 0 то зачем опять присваивать? можно сделать так var S:integer;

0

const S=0; i=7;

0

это начало

0

вот теперь цикл while дело все в том что while отличие от for работает только когда истинное значение у тебя оно истинно 7>1 затем идет повторное начало операции то есть остальное входит в while единственно нету writeln после этого выводится окно будут значение истинно или ложь j:=i-1;

Дан 1 ответ
0 голосов
Правильный ответ

Цикл while - делай, пока условие истинно
т.е. пока i <= 9 программа выполняет блок внутри этого цикла в операторных скобках begin .. end;<br>P=1, i=3: 
i (=3) <= 9 ?   да => p:=1*(3 div 3)=1*1=1, i:=3+1=4
i (=4) <= 9 ?   да => p:=1*(4 div 3)=1*1=1; i:=4+1=5
и т.д. пока верно условие i<=9 <br>P.S. div - деление нацело, т.е. 5 div 2=2, в пятерке содержится 2 раза число два, в ответ идет 2
а вот 5 mod 2 = 1 это деление с остатком

(200 баллов)