Задачи по Pascal. Найти сумму элементов массива с четными номерами, произведение отрицательных элементов, количество нечетных элементов.

Условие задачи: Массив А вводится с клавиатуры. Найти сумму его элементов с четными номерами, произведение отрицательных элементов, количество нечетных элементов. Размер произвольный. (Язык Pascal)

Сложность: легкая.

Решение задачи

До начала решения задачи прочитайте вот ( это ), там мы искали среднее арифметическое элементов с нечетными номерами, прочитайте там начало и вы поймете что значит элементы с четными номерами.

Теперь к решению, оно не трудное, мы начнем заполнять массив вручную (по условию задачи), и каждый введенный элемент будем проверять на условия которые даны в задаче.

Для того чтобы решить задачу нам понадобятся следующие переменные:

  • Переменная mass — для массива
  • Переменная i — для цикла
  • Переменная n — для кол-ва элементов массива
  • Переменная count — для кол-во нечетных элементов
  • Переменная summa — для сумма элементов с четными номерами
  • Переменная proiz — для произведения отрицательных элементов.
  • Начнем мы с каркаса нашей программы

    type

    massiv =
    array
    [
    1..100
    ]
    of
    integer
    ;
    // создаём свой тип данных для массива
    var

    mass : massiv;
    // объявляем

    summa, proiz, count, n, i :
    integer
    ;
    // переменные

    begin

    write
    (
    'Введите длину массива : '
    );readln(n);
    // просим пользователя ввести длину массива


    summa :=
    0
    ; proiz :=
    1
    ; count :=
    1
    ;
    // присваиваем начальные значение переменным чтобы не было ошибок

    readln;
    // чтобы программа не закрывалась
    end
    .

    Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ), попросили пользователя ввести кол-во элементов массива. Также присвоили начальные значения переменным с которыми будем работать, т.е. будем их складывать или умножать с какими-то другими переменными.

    Обратите внимание что у переменной proiz начальное значение 1 а не 0, если будет 0, то произведение всегда будет равно 0.

    Теперь довольно просто цикл :

    for
    i:=
    1
    to
    n
    do
    // пускаем цикл

    begin

    write
    (
    'Введите '
    ,i,
    ' элемент : '
    );readln(mass[i]);
    // просим пользователя ввести число

    // проверяем введенное пользователем число на все условия

    if
    (i
    mod
    2
    =
    0
    )
    then
    // если номер элемента четный

    summa := summa + mass[i];

    if
    (mass[i] <
    0
    )
    then
    // если введенное число меньше 0

    proiz := proiz * mass[i];

    if
    (mass[i]
    mod
    2
    <>
    0
    )
    then
    // если введенное число нечетное

    count := count +
    1
    ;

    end
    ;

    Всё довольно просто, каждое введенное пользователем число мы проверяем на три условия.

    Всё решение задачи Pascal

    type

    massiv =
    array
    [
    1..100
    ]
    of
    integer
    ;
    // создаём свой тип данных для массива
    var

    mass : massiv;
    // объявляем

    summa, proiz, count, n, i :
    integer
    ;
    // переменные

    begin

    write
    (
    'Введите длину массива : '
    );readln(n);
    // просим пользователя ввести длину массива


    summa :=
    0
    ; proiz :=
    1
    ; count :=
    1
    ;
    // присваиваем начальные значение переменным чтобы не было ошибок


    for
    i:=
    1
    to
    n
    do
    // пускаем цикл

    begin

    write
    (
    'Введите '
    ,i,
    ' элемент : '
    );readln(mass[i]);
    // просим пользователя ввести число

    // проверяем введенное пользователем число на все условия

    if
    (i
    mod
    2
    =
    0
    )
    then
    // если номер элемента четный

    summa := summa + mass[i];

    if
    (mass[i] <
    0
    )
    then
    // если введенное число меньше 0

    proiz := proiz * mass[i];

    if
    (mass[i]
    mod
    2
    <>
    0
    )
    then
    // если введенное число нечетное

    count := count +
    1
    ;

    end
    ;

    writeln
    (
    'Сумма элементов с четными номерами : '
    , summa);
    // выводим результат

    writeln
    (
    'Произведение отрицательных элементов : '
    , proiz);
    // выводим результат

    writeln
    (
    'Количество нечетных элементов : '
    , count);
    // выводим результат


    readln;
    // чтобы программа не закрывалась
    end
    .
    Предыдущая
    ПрограммированиеЗадачи по Pascal. Найти наибольший элемент и его номер в массиве, элементы которого вводятся с клавиатуры. Размер произвольный.
    Следующая
    ПрограммированиеЗадачи по Pascal. Найти среднее арифметическое элементов массива с нечетными номерами.
    Помогли? Поставьте оценку, пожалуйста.
    Плохо
    0
    Хорошо
    0
    Супер
    0
    Спринт-Олимпик.ру
    Мы в ВК, подпишись на нас!

    Подпишись на нашу группу в ВКонтакте, чтобы быть в курсе выхода нового материала...

    Вступить
    ×