Вопрос задан 31.08.2018 в 01:19. Предмет Информатика. Спрашивает Головко Віталік.

Написать программу, которая проверяет, является ли введенная с клавиатуры строка дробным числом. На

Паскале
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Завьялов Олег.
// Программа на паскале
var
  s: string;
  k, i: integer;
begin
  readln(s);
  k := pos(',', s);
  if (k < 2) or (k = length(s)) then writeln('No')
  else
  begin
    for i := 1 to length(s) do
      if (i <> k) and ((s[i] < '0') or (s[i] > '9')) then
      begin
        writeln('No');
        exit
      end;
    writeln('Yes');
  end;
end.

Примеры работы программы:
Ввод   Вывод
1,6          Yes
123,        No
,49          No
0,758     Yes
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для написания программы на Pascal, которая проверяет, является ли введенная строка с клавиатуры дробным числом, вы можете использовать следующий код. Для простоты предположим, что пользователь всегда вводит строку в виде числа в десятичной записи:

```pascal program CheckFraction;

var inputStr: string; valid: boolean; i, dotCount: integer;

begin // Инициализация переменных valid := true; dotCount := 0;

// Ввод строки с клавиатуры write('Введите строку: '); readln(inputStr);

// Проверка каждого символа строки for i := 1 to length(inputStr) do begin // Проверка, является ли символ цифрой или точкой if not (inputStr[i] in ['0'..'9', '.']) then begin valid := false; break; end else if inputStr[i] = '.' then begin // Подсчет количества точек Inc(dotCount); // Если более одной точки, строка не является дробным числом if dotCount > 1 then begin valid := false; break; end; end; end;

// Проверка наличия цифр и того, что точка не является первым или последним символом if (length(inputStr) = 0) or (inputStr[1] = '.') or (inputStr[length(inputStr)] = '.') then valid := false;

// Вывод результата if valid then writeln('Строка является дробным числом.') else writeln('Строка не является дробным числом.');

readln; end. ```

Эта программа использует цикл для проверки каждого символа введенной строки. Если символ не является цифрой или точкой, или если строка содержит более одной точки, программа считает строку недопустимой. В конце программа выводит результат проверки.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос