Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.01.2010, 17:48   #1
Kore
 
Регистрация: 07.01.2010
Сообщений: 3
По умолчанию Решение задачи в паскале

Требуется что бы во время запроса оценки не выкидывало при вводе букв,а просило ввести цифру.....






Program Ifit;
Uses crt;
Var sub:array[1..4] of string;
Grades:array[1..4,1..4] of integer;
i,j:integer;
begin
Clrscr;
For i:=1 to 3 do
Begin
Write(‘какой предмет?’);
Readln(sub[i]);
For j:=1 to 3 do
Begin
Write(‘студент ‘,j,’ оценка: ‘);
Readln(grades[i,j]);
End;
End;
Writeln;
Writeln(‘предмет || студент 1 || студент 2 || студент 3 || средний балл’);
For i:=1 to 3 do
Writeln(sub[i],’ ‘,grades[i,1],’ ‘,grades[i,2]
,’ ‘,grades[i,3],’ ‘,
(grades[i,1]+grades[i,2]+grades[i,3])/3:1:1);
Writeln(‘ Sredniy.bal ‘,(grades[1,1]+grades[2,1]+grades[3,1]/3:1:1,’ ‘,
(grades[1,2[+grades[2,2]+grades[3,2])/3:1:1,’
(grades[1,3]+grades[2,3]+grades[3,3]/3:1:1);
End.
Kore вне форума Ответить с цитированием
Старый 07.01.2010, 20:34   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Код:
repeat
  readln(s); //s - типа string;
  val(s, grades[i,j], q); //q - типа integer
  if q <> 0 then writeln('это не число')
until q = 0
eoln вне форума Ответить с цитированием
Старый 08.01.2010, 04:58   #3
Kore
 
Регистрация: 07.01.2010
Сообщений: 3
По умолчанию

Цитата:
Сообщение от eoln Посмотреть сообщение
Код:
repeat
  readln(s); //s - типа string;
  val(s, grades[i,j], q); //q - типа integer
  if q <> 0 then writeln('это не число')
until q = 0

Можешь показать куда именнно это прописывать(я в програмировани ноль)))
Kore вне форума Ответить с цитированием
Старый 08.01.2010, 05:22   #4
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

понятно, что и этот код писал не ты

это надо поставить там, где у тебя есть Readln(grades[i,j]);
Не забудь объявить переменные (надеюсь ты знаешь как это сделать)

Write(‘студент ‘,j,’ оценка: ‘);
repeat
readln(s); //s - типа string;
val(s, grades[i,j], q); //q - типа integer
if q <> 0 then writeln('это не число')
until q = 0
Readln(grades[i,j]);
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 08.01.2010, 06:53   #5
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

2Rust88 точнее вот так должно быть
Код:
Write(‘студент ‘,j,’ оценка: ‘);
repeat
readln(s); //s - типа string;
val(s, grades[i,j], q); //q - типа integer
if q <> 0 then writeln('это не число')
until q = 0;
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение задачи в Турбо Паскале daemoon1 Помощь студентам 2 13.12.2009 18:08
Решение задачи на массивы в паскале MPAK92 Помощь студентам 4 03.12.2009 21:25
Решение геометрической задачи на Паскале dancergirl Помощь студентам 2 09.04.2009 09:01
Решение задачи в паскале Натуськ@25 Помощь студентам 16 15.02.2009 15:48