//Я так понял сумма цифр это например: 1 + 1; 2 + 2; 3 + 3; 4 + 4...Если встречается число 5, то 5 + 5 = 10...мы удаляем 5.
igortychinin
19.12.2021
var a, b: integer; begin writeln('Введите часы: '); readln(a); writeln('Введите минуты: '); readln(b); if (a > 6) and (a < 10) then writeln('Утро'); if (a = 10) and (b = 0) then writeln('Утро'); if (a = 6) and (b >= 30) then writeln('Утро'); if (a > 10) and (a < 16) then writeln('День'); if (a = 10) and (b >= 1) then writeln('День'); if (a = 16) and (b <= 30) then writeln('День'); if (a > 16) and (a < 22) then writeln('Вечер'); if (a = 22) and (b = 0) then writeln('Вечер'); if (a = 16) and (b >= 31) then writeln('Вечер'); if (a > 22) or (a < 6) then writeln('Ночь'); if (a = 22) and (b >= 1) then writeln('Ночь'); if (a = 6) and (b <= 30) then writeln('Ночь'); end.
skvik71672
19.12.2021
Здесь пришлось учитывать положительные и отрицательные числа, т.к. длина строки с отрицательным числом включает в себя и знак минус. Поэтому в некоторых местах программы я добавлю пояснение.
var n,p:integer; s: string; begin write ('Введите число: '); readln (n); if n<0 then n:=-n; // отрицательное число переделываем в положительное, чтобы "длина строки" ниже не получилась больше количества цифр в числе str(n,s); // преобразуем число в строку, чтобы узнать длину числа (количество цифр) if (length(s) mod 2)=0 then n:=n div 10; // проверяем длину числа на четность. так как нам нужны цифры с НЕЧЕТНЫХ мест, убираем из числа последнюю цифру, которая стоит на ЧЕТНОМ месте: p:=1; while n>=1 do begin // организуем цикл ПОКА число не станет меньше единицы (в цикле мы будем отрезать от него по две цифры) p:=p*(n mod 10); // произведение умножаем на последнюю цифру числа (остаток от деления числа на 10) n:=n div 100; // отрезаем от числа 2 последние цифры. (в последней итерации цикла оно примет вид 0,0х, т.е. будет больше 0, но меньше 1) end; writeln; writeln ('Произведение цифр,которые расположены на нечётных позициях, = ',p); end.
Проимер:
Введите число: -2323 Произведение цифр,которые расположены на нечётных позициях, = 4
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Удалить из массива все элементы, сумма цифр которых равна 10 (решение через Паскаль)
PascalABC.NET
begin
ArrRandom(50,0,10).Where(x -> x + x <> 10).Print
end.
//Я так понял сумма цифр это например: 1 + 1; 2 + 2; 3 + 3; 4 + 4...Если встречается число 5, то 5 + 5 = 10...мы удаляем 5.