program k2game; uses crt; var i,a,n: integer; begin textbackground(14); clrscr; gotoxy(33,2); textcolor(4); writeln('игра "угадай число! " '); delay(400); textcolor(5); gotoxy(23,4); writeln('1. компьютер загадывает число от 0 до 9.'); delay(840); textcolor(5); gotoxy(23,5); writeln('2. ваша - угадать это число! '); delay(840); textcolor(5); gotoxy(23,6); writeln('3. не забывайте, что у вас всего две попытки! '); delay(640); textcolor(5); gotoxy(23,7); writeln('4. если же вы ошиблись, то компьютер даст вам подсказку.');
randomize; a: =random(10); n: =0; textcolor(0); repeat gotoxy(23,9); writeln(' введите число.'); gotoxy(23,10); readln(i); if (i < > a) then begin n: =n+1; gotoxy(23,11); if (i> a) then writeln('подсказка: загаданное число меньше.') else writeln('подсказка: загаданное число больше.') end; until ((i=a) or (n=2));
gotoxy(23,13); textcolor(2); if (i=a) then writeln('поздравляю! вы выйграли! ') else writeln('к сожалению,н
о вы проиграли! ');
end.
krisrespect
18.12.2021
1. код, предложенный budzsergiy777p0i27m наиболее подходит для решения, если слова разделены только одним пробелом. решение ниже аналогично (удалить пробелы в начале и в конце строки, затем посчитать пробелы, увеличить на 1 результат и вывести на экран )программа: print((' ')+1) 2. здесь следует учесть, что строка является неизменяемым элементом, т.е. напрямую символ в строке изменить нельзя, но можно получить два среза строки до и после буквы 'h' и затем склеить первый срез + большая буква 'h' + второй срез. например, строка 'abchdef' -> 'abc'+'h'+'def'. а чтобы не захватить первую и последнюю букву h, нужно найти их индексы в строке и затем обрабатывать только часть строки между первой и последней буквой h.программа: x=input() #ввод строкиn1=x.find('h') #находим индекс первого вхождения буквы hn2=x.rfind('h') #находим индекс последнего вхождения буквы hy=x[n1+1: n2] #выбираем срез строки после первого вхождения #буквы h и до последнего вхождения буквы hwhile y.find('h')! =-1: #пока в срезе есть буква h y=y[: y.find('h')]+'h'+y[y.find('h')+1: ] #заменить малую букву h на hprint(x[: n1+1]+y+x[n2: ]) #вывод строки до первой буквы h+результат #замен в срезе h на h + вывод строки после # последней буквы h
pnat1235
18.12.2021
Pascalabc.net 3.3.5, сборка 1669 от 21.05.2018 внимание! если программа не работает, обновите версию! 1. функция function avg(a: array of integer): =a.where(t-> t> 0).average; begin var a: =readalltext('input.txt').tointegers; writeln('среднее значение положительных элементов ',avg(a)) end. 2. процедура procedure avg(a: array of integer; var m: real); begin m: =a.where(t-> t> 0).average end; begin var a: =readalltext('input.txt').tointegers; var m: real; avg(a,m); writeln('среднее значение положительных элементов ',m) end. хорошо видно, что решение с функцией имеет явное преимущество.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Составьте в pascal abc сложную(красивую с многими элементами и прочим прочим что б всего было много) граффическую программу!
вот , моя игра . угадай число.
program k2game; uses crt; var i,a,n: integer; begin textbackground(14); clrscr; gotoxy(33,2); textcolor(4); writeln('игра "угадай число! " '); delay(400); textcolor(5); gotoxy(23,4); writeln('1. компьютер загадывает число от 0 до 9.'); delay(840); textcolor(5); gotoxy(23,5); writeln('2. ваша - угадать это число! '); delay(840); textcolor(5); gotoxy(23,6); writeln('3. не забывайте, что у вас всего две попытки! '); delay(640); textcolor(5); gotoxy(23,7); writeln('4. если же вы ошиблись, то компьютер даст вам подсказку.');
randomize; a: =random(10); n: =0; textcolor(0); repeat gotoxy(23,9); writeln(' введите число.'); gotoxy(23,10); readln(i); if (i < > a) then begin n: =n+1; gotoxy(23,11); if (i> a) then writeln('подсказка: загаданное число меньше.') else writeln('подсказка: загаданное число больше.') end; until ((i=a) or (n=2));
gotoxy(23,13); textcolor(2); if (i=a) then writeln('поздравляю! вы выйграли! ') else writeln('к сожалению,н
о вы проиграли! ');
end.