IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> Помогите с тренажёрам для тренеровки памяти на PAS
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Помогите с тренажёрам для тренеровки памяти на PASCAL ???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 42

Репутация: -  0  +


Расскажите более подробно, пожалуйста. Что имеется ввиду под тренировкой памяти?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Просто задали написать на Pascal какую нибудь прогу для тренировки памяти, причем тип её определяется студентом. Вот я и не знаю как это сделать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 42

Репутация: -  0  +


1. Тренировка памяти на цвет, форму, количество геометрических фигур.
2. Тренировка памяти на слова, числа.
Всё достаточно просто реализуется. Вам нужно идеи или готовые программы?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


...
*****

Группа: Пользователи
Сообщений: 1 347
Пол: Мужской

Репутация: -  3  +


Подаем идеи, если человек не справляется - программы или примеры!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Мне нужны исходники, хоть это и просто, но я не совсем дружу с PASCALем и это вызывает трудности. Поэтомы если вам не трудно отправте мне её, мне подойдёт любой тренажёр.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Профи
****

Группа: Пользователи
Сообщений: 775
Пол: Мужской

Репутация: -  0  +


А поисковиками не пробовал пользоваться - говорят помогает... >:(

http://pascal.sources.ru/games/quad.zip
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #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.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Спасибо огромное - очень выручили.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Я вот только не понял, что делает данная программа.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

Группа: Пользователи
Сообщений: 42

Репутация: -  0  +


Моя?
Выводит на экран n-ное количество случайных чисел, выжидает некоторое время, просит ввести их.  И идет проверка. Затем время их показа на экране уменьшается, количество чисел увеличивается, сами числа тоже.
В конце работы программы выводится ср. процент ошибок.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


У меня почему-то она сразу запрашивает первое число, вводишь его она говорит, что ошибок одна, процент сто, при втором обращении она запрашивает уже прервое и второе и опять ошибок две, процент ошибок сто и так до пяти.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #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.  
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14





Группа: Пользователи
Сообщений: 7

Репутация: -  0  +


Мне кажется, что в этой программе нужно увеличить задержку появляющегося числа, потому как слишком быстро появляются и исчезают числа, но всё равно спасибо.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Гость






Цитата
Мне кажется, что в этой программе нужно увеличить задержку появляющегося числа, потому как слишком быстро появляются и исчезают числа, но всё равно спасибо.

Процедура Delay(N) тебе поможет ! N - количество миллисекунд..
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 




- Текстовая версия 28.06.2017 20:54
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"