Найти самое большее чётное произведение среди чисел, расстояние между которыми меньше 5 - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Данная "программа" должна обрабатывать числа, расстояние между которыми меньше 5, а также находить среди таких двух чисел самое большее чётное произведение. КОМПИЛИРУЕТСЯ ВСЁ НОРМАЛЬНО, НО ИСПОЛЬНЯТЬ ЭТА ГАДЮКА НИЧО НЕ ХОЧЕТ ИМЕННО В СЛУЧАЕ, КОГДА НА ВХОД ПОСУТПАЕТ БОЛЕЕ 5 ЧИСЕЛ. Т.е. цикл for(i=5;i<n;i++) не хочет заводиться, консоль тупо прекращает работу.

#include <stdio.h>
int main(void)
{   char j,c;
     int i;
     int n;
     int a[5];
     int x;
     int max=-1;
     
    scanf("%d",&n);
    for (i=0;i<=4;i++){
        scanf("%d",&a[i]);
        }
    for (i=5;i<n;i++){
        scanf ("%d",x);
        for (j=1;j<5;j++){
            for (c=0;c<5;c++){
                if ((a[c]*a[j-1]>max )&&  (a[j-1]*a[c]%2 ==0))
                    max=a[c]*a[j-1];

            }
            
        }
        
        for (j=0;j<4;j++){
            a[j]=a[j+1];
        }
        a[4]=x;
        }
     if (max==-1)
         printf("-1");
    else printf ("%d",max);
    getchar();
    getchar();
    return 0;
}
Тэкс... Счётчик тут должен робить... Тэк... Вывод массива когда у его индекса чото вычитаем тоже работает... Угу... Кажется я как-то выхожу из границ массива, но я в упор не могу разглядеть этого... Так, падажжи емана
лол, разглядеть он не может, у тебя две строки где идут пляски с массивамми, там же очевидно и ошибка
эхх, пойти спать или сожжрать таки хлеб с пащтетом? но тогда изжога будет от паштета с хлебом, я не хочу изжоги, антиацида нет с собой

Решение задачи: «Найти самое большее чётное произведение среди чисел, расстояние между которыми меньше 5»

textual
Листинг программы
scanf ("%d",&x);

Объяснение кода листинга программы

В данном коде выполняется следующие действия:

  1. Сканирование значения переменной x с помощью функции scanf(). Функция scanf() используется для ввода данных с клавиатуры. В данном случае, вводится значение переменной x.
  2. Инициализация переменной x. Значение переменной x присваивается значение, которое было введено с клавиатуры. В итоге, данный код выполняет только одно действие - считывает значение переменной x с клавиатуры и присваивает его этой переменной.

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы