begin
clrscr;
randomize;
a:=0;
b:=0;
c:=0;
k:=1;
repeat
chislo:=random (21);
write (chislo:4);
if chislo=8 then a:=k;
if chislo=15 then b:=k;
if chislo=16 then c:=k;
inc(k);
until a*b*c>0;
_________________________________
помоги понят.
Для чего k присуждается 1?
Для чего a*b*c>0?
Отделbное спасибо Александру Устименко!
Другие языки программирования и технологии
паскал (помощ по объяснению)
{ генератор случайных чисел вырабатывает целые числа в диапазоне от 0 до 20. тот процесс продолжается до тех пор, пока не будет выработано число 8,15 и 16. Определить и отобразить каким по порядку будет оно ( то есть будет ряд чисел, в которых будет 8 15 16 и программа отобразит их по порядку (8 такое, 15 такое, 16 такое) }
uses crt;
var chislo, k, i: integer;
a, b, c: integer;
begin
clrscr;
randomize;
a:=0; {номер позиции числа 8 =0}
b:=0; {номер позиции числа 15 =0}
c:=0; {номер позиции числа 16 =0}
k:=1; {считаем позиции, начинаем с «первой» счетчик}
repeat{выполнять до тех пор}
chislo:=random (21); {число присвоить наугад до 0…20}
write (chislo:4); {вывод чисел на экран}
if chislo=8 then a:=k; { если число равно «8» тогда его позиция =k }
if chislo=15 then b:=k; { если число равно «15» тогда его позиция =k }
if chislo=16 then c:=k; { если число равно «16» тогда его позиция =k }
inc(k); {счетчик позиций, увеличиваем на 1}
until a*b*c>0; {пока произведение номеров позиций станет больше нуля, то есть все позиции определятся по своим номерам, то есть не нули, т. е. будет выработаны числа 8,15 и 16}
writeln (' 8 = # ', a, '; 15 = # ', b,'; 16 = # ', c); {}
readln;
end.
uses crt;
var chislo, k, i: integer;
a, b, c: integer;
begin
clrscr;
randomize;
a:=0; {номер позиции числа 8 =0}
b:=0; {номер позиции числа 15 =0}
c:=0; {номер позиции числа 16 =0}
k:=1; {считаем позиции, начинаем с «первой» счетчик}
repeat{выполнять до тех пор}
chislo:=random (21); {число присвоить наугад до 0…20}
write (chislo:4); {вывод чисел на экран}
if chislo=8 then a:=k; { если число равно «8» тогда его позиция =k }
if chislo=15 then b:=k; { если число равно «15» тогда его позиция =k }
if chislo=16 then c:=k; { если число равно «16» тогда его позиция =k }
inc(k); {счетчик позиций, увеличиваем на 1}
until a*b*c>0; {пока произведение номеров позиций станет больше нуля, то есть все позиции определятся по своим номерам, то есть не нули, т. е. будет выработаны числа 8,15 и 16}
writeln (' 8 = # ', a, '; 15 = # ', b,'; 16 = # ', c); {}
readln;
end.
k:=1 ваще хз зачем, т. к. условия задачи нету, возможно, это какой-то счётчик попыток, т. к. он увеличивается каждый раз
a*b*c>0 - когда ни одно из чисел a,b,c не равно нулю
a*b*c>0 - когда ни одно из чисел a,b,c не равно нулю
Дык, у Александра Устименко бы в ЛС и спросил ;)
И заодно бы его вознаградил деньгой, раз благодарен, а то что ему твое отделbное спасибо?
И заодно бы его вознаградил деньгой, раз благодарен, а то что ему твое отделbное спасибо?
Переменной К присвоено значение 1 для того, чтобы переменная а имела значение 1, если переменная число=8; переменная б имела значение 1, если число=15; переменная ц имела значение 1, если число=16.
Для более подробного объяснения нужен полный код, а не его фрагмент.
Для более подробного объяснения нужен полный код, а не его фрагмент.
Похожие вопросы
- Ребят, я тут решил программированием заняться, вы бы не моли бы мне помочь? Проблема в том, что я не могу найти "паскал"
- напишите задачу на Паскал пожалуйста
- Можно без изучения таких простих програмов как паскал сразу изучат С++
- помогите по информатике. паскал
- Помогите))) срочно нужна помощ))) подскажите програму для конвертации flv в wmv или avi в wmv)))
- Нужна помощ! как взломать телефон N95 8G?может есть какие ибудь программы?
- нужна помощ. Помогите я первый раз переустановлю windows что делать вставит диск помагите пожалуйста
- Информатика!Нужна помощь!если можно,с объяснением.
- по с++ очень нужна помощ понимающего человека
- libBox2d.lib + Visual C++ нужна помощ!