trototil
11.06.2022 02:03

Решите не очередь сложно
Решить циклом while

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
foma89
03.12.2021 02:09

На строке 9 "if x>=-7.5 and x<2 then y:=(a*sqrt(abs(x+6))); " в том месте, где выделено жирным, компилятор думает, что необходимо произвести побитовое умножение числа с плавающей точкой типа real -7.5 и целого числа x. Т.к. побитовое умножение применимо только к целым числам, компилятор пытается преобразовать -7.5 к целому числу, т.е. к integer, и у него это не получается, о чем он Вам и говорит.

Чтобы он не думал, что Вы собираетесь производить побитовое умножение (ведь Вы хотите произвести логическую операцию между результатами двух сравнений), нужно занести в скобки выражения x>=-7.5 и x<2, чтобы получилась такая строка: "if (x>=-7.5) and (x<2) then y:=(a*sqrt(abs(x+6))); "

0,0(0 оценок)
Ответ:
anka110
04.09.2021 08:42
Var
    i, n, s: integer;

begin
    readln(n);
    i := 0;
    s := 0;
    
    while i < 7 do
    begin
        if (n mod 2 = 1) then begin
            s := s + n;
            i := i + 1;
        end;
        n := n + 1;
    end;
    
    writeln(s);
end.

var
    i, n, s: integer;

begin
    readln(n);
    i := 0;
    s := 0;
    
    repeat
        if (n mod 2 = 1) then begin
            s := s + n;
            i := i + 1;
        end;
        n := n + 1;
    until i >= 7;
    
    writeln(s);
end.

var
    i, n, s: integer;

begin
    readln(n);
    n := n + (n + 1) mod 2;
    s := 0;
    
    for i := 1 to 7 do
    begin
        s := s + n;
        writeln(n);
        n := n + 2;
    end;
    
    writeln(s);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота