
На Pascal. С клавиатуры вводится вещественное число. Вывести сумму трёх его первых цифр после
десятичной точки. Решение задачи должно быть без условии (if) и циклов (while). 

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

var a:real;
b:integer;
begin
readln(a);
b:=round(a*1000)mod 1000;
write(b div 100 + b mod 10 + b mod 100 div 10);
end.



Для решения задачи без использования условий и циклов можно воспользоваться математическими операциями и функциями.
В Pascal есть функция Frac
, которая возвращает дробную часть числа. Мы можем использовать её, чтобы получить дробную часть введенного числа.
Затем мы можем умножить полученную дробную часть на 1000, чтобы сдвинуть её на три разряда влево и превратить её в целое число.
Далее, для полученного целого числа мы можем использовать операцию деления на 100, чтобы отсечь все разряды после третьего.
Вот пример кода на Pascal, реализующий описанную логику:
pascalprogram SumOfDigits; var inputNumber, fractionalPart: Real; integerPart, sum: Integer; begin Write('Введите вещественное число: '); ReadLn(inputNumber); fractionalPart := Frac(inputNumber); // Получаем дробную часть числа integerPart := Trunc(fractionalPart * 1000); // Переводим дробную часть в целое число sum := integerPart div 100; // Получаем сумму трех первых цифр WriteLn('Сумма трех первых цифр после десятичной точки: ', sum); end.
После запуска программы она запросит ввод вещественного числа и выведет сумму его первых трех цифр после десятичной точки.


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








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili