Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/54: Рейтинг темы: голосов - 54, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 12

Защита от дурака

13.11.2009, 02:30. Показов 10692. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
следующая проблема, если я ввожу символы любые, то как мне сделать чтобы программа выводила сообщение "введены не числовые коэффициенты"

Pascal
1
2
3
4
5
6
7
programm abc;
var
 a:real;
begin
 write('vvedite a');
 readln(a);
end.
Только нужно чтобы с readln было
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.11.2009, 02:30
Ответы с готовыми решениями:

защита от дурака
Лазил по форуму, не могу найти подходящую защиту от ввода букв для интеграции. Необходимо защитить значения А,B,n от ввода букв: ...

Защита от дурака
Форумчане обьясните как сделать защиту от дурака заключается она в том что при заполнение двумерного массива при вводе буквы вместо числа...

Защита от дурака
Следующая проблема, нужно что бы при вводе букв и символов, программа выдавала сообщение "('Это не является числом, повторите...

26
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 12
13.11.2009, 04:08  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Inadequate Посмотреть сообщение
и потом a,b,c перевести из типа string в число с помощью процедур указанных в посте #12?
текс то понятно, а вот с этим проблемки
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
13.11.2009, 04:11
какие именно у вас проблемы?
1
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 12
13.11.2009, 04:13  [ТС]
Цитата Сообщение от Inadequate Посмотреть сообщение
какие именно у вас проблемы?
меня интересует как записать преобразование в паскале
и дальше просто вставить код остальной?
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
13.11.2009, 04:17
val(s,k,j) означает что в переменную k типа integer,real запишется число переведенное из строки s, если данный перевод невозможен то в переменную j типа integer запишется 0. что тут не понятного?

Добавлено через 1 минуту
вы можете реализовать кстати и просто через val но там тоже надо будет цикл лепить.

Добавлено через 1 минуту
Цитата Сообщение от Fragman Посмотреть сообщение
и дальше просто вставить код остальной?
да перевести в те значения которые вам нужны, и просто вставить...
1
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 12
13.11.2009, 04:20  [ТС]
кароче я вообще дуб (( незнаю как сделать одну прогу ( оставлю кароч как есть, пускай выкидывает при вводе символов, скажу незнаю как сделать

Добавлено через 23 секунды
спасибо что помог
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
13.11.2009, 05:33
вот решение с ограничением на ввод:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
uses
  crt;
var
  sa,sb,sc:string;
  a,b,c,d:real;
  code:integer;
{ôóíêöèÿ ïðîâåðêè}
function Pr(s:string):boolean;
const
  n=['0'..'9'];
var
  i:integer;
  fl:boolean;
begin
  fl:=true;
  for i:=1 to length(s) do
    if not(s[i] in n) then
    begin
      fl:=false;
      break
    end;
  Result:=fl
end;
{îñíîâíàÿ ïðîãðàììà}
begin
  clrscr;
  {ïðîâåðÿåì íà êîððåêòíîñòü}
  writeln('Ââåäèòå a...');
  repeat
    readln(sa);
    if not Pr(sa) then
      writeln('Äàííàÿ çàïèñü íå ÿâëÿåòñÿ êîððåêòíîé çàïèñüþ ÷èñëà!')
  until
    Pr(sa);
  writeln('Ââåäèòå b...');
  repeat
    readln(sb);
    if not Pr(sb) then
      writeln('Äàííàÿ çàïèñü íå ÿâëÿåòñÿ êîððåêòíîé çàïèñüþ ÷èñëà!')
  until
    Pr(sb);
  writeln('Ââåäèòå c...');
  repeat
    readln(sc);
    if not Pr(sc) then
      writeln('Äàííàÿ çàïèñü íå ÿâëÿåòñÿ êîððåêòíîé çàïèñüþ ÷èñëà!')
  until
    Pr(sc);
  {ïåðåâîäèì}
  val(sa,a,code);
  val(sb,b,code);
  val(sc,c,code);
  if a=0 then
    if b=0 then
      writeln ('Óðàâíåíèå âûðàæäåíî')
    else
      writeln ('Åäèííñòâåííûé êîðåíü X=',-c/b)
      else
      begin
        d:=b*b-4*a*c;
        a:=2*a;
        if d<0 then
          writeln ('Äåéñòâèòåëüíûõ êîðíåé íåò!')
        else
          if d=0 then
            writeln ('Îáà êîðíÿ ðàâíû: X1=X2',-b/a)
          else
          begin
            d:=sqrt(d);
            writeln ('X1=',(-b+d)/a);
            writeln ('X2=',(-b-d)/a);
          end;
      end;
end.
0
0 / 0 / 0
Регистрация: 01.03.2011
Сообщений: 4
01.03.2011, 23:21
Возник такой вопрос, использую данный алгоритм на проверку ввода цифр в двумерном массиве, но по неизвестной ошибке он выдает ошибку. не могли бы подсказать что в этом алгоритме надо переделать для проверки правильности ввода нескольких массивов одновременно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.03.2011, 23:21

Защита от дурака
Здравствуйте, участники форума! У меня проблема: написал курсовую работу по паскалю на базы данных, теперь необходимо разработать так...

Защита от дурака!
Программа среди столбцов нашей матрицы (где первый элемент столбца отрицателен), ищет последний столбец с максимальным количеством...

Защита от дурака на pascal/lazarus
Здравствуйте, прошу помочь в написании &quot;защиты от дурака&quot;. Нужно вводить числа от 1 до 9, другие числа или символы нужно запретить. Заранее...

Защита от дурака в Паскале (от не того типа данных)
Конкретной задачи нет, интересует сугубо теория=) Предположим нам надо считать в консольном режиме любого паскаля переменную...

Защита от дурака
Добрый день! Помогите пожалуйста:как сделать, чтобы проверялось,что вводимые с клавиатуры данные принадлежат типу int. #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru