Помогите с тренажёрам для тренеровки памяти на PAS |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
Помогите с тренажёрам для тренеровки памяти на PAS |
Wolf |
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Помогите с тренажёрам для тренеровки памяти на PASCAL ???
|
ozzy |
Сообщение
#2
|
Новичок Группа: Пользователи Сообщений: 42 Репутация: 0 |
Расскажите более подробно, пожалуйста. Что имеется ввиду под тренировкой памяти?
|
Wolf |
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Просто задали написать на Pascal какую нибудь прогу для тренировки памяти, причем тип её определяется студентом. Вот я и не знаю как это сделать.
|
ozzy |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 42 Репутация: 0 |
1. Тренировка памяти на цвет, форму, количество геометрических фигур.
2. Тренировка памяти на слова, числа. Всё достаточно просто реализуется. Вам нужно идеи или готовые программы? |
AlaRic |
Сообщение
#5
|
... Группа: Пользователи Сообщений: 1 347 Пол: Мужской Репутация: 3 |
Подаем идеи, если человек не справляется - программы или примеры!
|
Wolf |
Сообщение
#6
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Мне нужны исходники, хоть это и просто, но я не совсем дружу с PASCALем и это вызывает трудности. Поэтомы если вам не трудно отправте мне её, мне подойдёт любой тренажёр.
|
GLuk |
Сообщение
#7
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
А поисковиками не пробовал пользоваться - говорят помогает... >:(
http://pascal.sources.ru/games/quad.zip |
ozzy |
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 42 Репутация: 0 |
Uses Crt;
Const MaxNumbers = 5; Var Numbers : Array [1..MaxNumbers] of Integer; Numbers2 : Array [1..MaxNumbers] of Integer; ErrorsA : Array [1..MaxNumbers] of Integer; i : Integer; TempStr : String; S : String; DelTime : Integer; CurrN : Integer; Errors : Integer; Diff : Integer; Sum : Real; Begin CurrN:=1; DelTime:=MaxNumbers*1000; Diff:=100; Randomize; For i:=1 to MaxNumbers-CurrN do ErrorsA[i]:=0; While CurrN<=MaxNumbers do begin ClrScr; TempStr:=''; S:=''; for i:=1 to CurrN do begin Numbers[i]:=Random(Diff); Str(Numbers[i],TempStr); S:=S+TempStr+' '; end; GotoXY(1,1); Writeln(DelTime div 1000,' секунд на выполнение задания!'); GotoXY(39-Length(s) div 2,12); Writeln(s); Delay(DelTime); ClrScr; Errors:=0; for i:=1 to CurrN do begin WriteLn('Введите ',i,' число: '); ReadLn(Numbers2[i]); end; for i:=1 to CurrN do begin if Numbers2[i]<>Numbers[i] then Errors:=Errors+1; end; WriteLn('Ошибок допущено: ',Errors); ErrorsA[CurrN]:=Round(Errors/CurrN*100); WriteLn('Процент допущенных ошибок : ',ErrorsA[CurrN],'%'); { Увеличиваем количество чисел } CurrN:=CurrN+1; { Уменьшаем время примерно на 1 сек. } DelTime:=DelTime-1000; { Увеличиваем числа } Diff:=Diff+100; ReadLn; end; Sum:=0; For i:=1 to MaxNumbers do Sum:=Sum+ErrorsA[i]; Sum:=Sum/MaxNumbers; WriteLn('Средний процент ошибок в выполненых заданиях = ',Round(sum),'%'); ReadLn; End. |
Wolf |
Сообщение
#9
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Спасибо огромное - очень выручили.
|
Wolf |
Сообщение
#10
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Я вот только не понял, что делает данная программа.
|
ozzy |
Сообщение
#11
|
Новичок Группа: Пользователи Сообщений: 42 Репутация: 0 |
Моя?
Выводит на экран n-ное количество случайных чисел, выжидает некоторое время, просит ввести их. И идет проверка. Затем время их показа на экране уменьшается, количество чисел увеличивается, сами числа тоже. В конце работы программы выводится ср. процент ошибок. |
Wolf |
Сообщение
#12
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
У меня почему-то она сразу запрашивает первое число, вводишь его она говорит, что ошибок одна, процент сто, при втором обращении она запрашивает уже прервое и второе и опять ошибок две, процент ошибок сто и так до пяти.
|
ozzy |
Сообщение
#13
|
Новичок Группа: Пользователи Сообщений: 42 Репутация: 0 |
Немножко подправил: Там стоял лишний readln
Uses Crt; Const MaxNumbers = 5; Var Numbers : Array [1..MaxNumbers] of Integer; Numbers2 : Array [1..MaxNumbers] of Integer; ErrorsA : Array [1..MaxNumbers] of Integer; i : Integer; TempStr : String; S : String; DelTime : Integer; CurrN : Integer; Errors : Integer; Diff : Integer; Sum : Real; Begin CurrN:=1; DelTime:=MaxNumbers*1000; Diff:=100; Randomize; For i:=1 to MaxNumbers-CurrN do ErrorsA[i]:=0; While CurrN<=MaxNumbers do begin ClrScr; TempStr:=''; S:=''; for i:=1 to CurrN do begin Numbers[i]:=Random(Diff); Str(Numbers[i],TempStr); S:=S+TempStr+' '; end; GotoXY(1,1); Writeln(DelTime div 1000,' секунд на выполнение задания!'); GotoXY(39-Length(s) div 2,12); Writeln(s); Delay(DelTime); ClrScr; Errors:=0; for i:=1 to CurrN do begin WriteLn('Введите ',i,' число: '); ReadLn(Numbers2[i]); end; for i:=1 to CurrN do begin if Numbers2[i]<>Numbers[i] then Errors:=Errors+1; end; WriteLn('Ошибок допущено: ',Errors); ErrorsA[CurrN]:=Round(Errors/CurrN*100); WriteLn('Процент допущенных ошибок : ',ErrorsA[CurrN],'%'); { Увеличиваем количество чисел } CurrN:=CurrN+1; { Уменьшаем время примерно на 1 сек. } DelTime:=DelTime-1000; { Увеличиваем числа } Diff:=Diff+100; WriteLn('Нажмите любую клавишу: '); ReadKey; end; Sum:=0; For i:=1 to MaxNumbers do Sum:=Sum+ErrorsA[i]; Sum:=Sum/MaxNumbers; WriteLn('Средний процент ошибок в выполненых заданиях = ',Round(sum),'%'); ReadLn; End. |
Wolf |
Сообщение
#14
|
Группа: Пользователи Сообщений: 7 Репутация: 0 |
Мне кажется, что в этой программе нужно увеличить задержку появляющегося числа, потому как слишком быстро появляются и исчезают числа, но всё равно спасибо.
|
Clane |
Сообщение
#15
|
Гость |
Цитата Мне кажется, что в этой программе нужно увеличить задержку появляющегося числа, потому как слишком быстро появляются и исчезают числа, но всё равно спасибо. Процедура Delay(N) тебе поможет ! N - количество миллисекунд.. |
Текстовая версия | 11.10.2024 13:27 |