Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 03.04.2016
Сообщений: 17
1

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

27.05.2017, 23:54. Показов 1256. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Данная "программа" должна обрабатывать числа, расстояние между которыми меньше 5, а также находить среди таких двух чисел самое большее чётное произведение.
КОМПИЛИРУЕТСЯ ВСЁ НОРМАЛЬНО, НО ИСПОЛЬНЯТЬ ЭТА ГАДЮКА НИЧО НЕ ХОЧЕТ ИМЕННО В СЛУЧАЕ, КОГДА НА ВХОД ПОСУТПАЕТ БОЛЕЕ 5 ЧИСЕЛ. Т.е. цикл for(i=5;i<n;i++) не хочет заводиться, консоль тупо прекращает работу.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#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;
}
Добавлено через 9 минут
Тэкс... Счётчик тут должен робить... Тэк...
Вывод массива когда у его индекса чото вычитаем тоже работает... Угу...
Кажется я как-то выхожу из границ массива, но я в упор не могу разглядеть этого... Так, падажжи емана

Добавлено через 37 секунд
лол, разглядеть он не может, у тебя две строки где идут пляски с массивамми, там же очевидно и ошибка

Добавлено через 3 минуты
эхх, пойти спать или сожжрать таки хлеб с пащтетом?
но тогда изжога будет от паштета с хлебом,
я не хочу изжоги, антиацида нет с собой
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2017, 23:54
Ответы с готовыми решениями:

Найти максимальное произведение двух чисел последовательности, расстояние между которыми не меньше заданного
На вход подается последовательность целых чисел по модулю не больше 1000. Признак конца 2*109....

Найти две точки, расстояние между которыми самое большое
N точек задано своими координатами на плоскости массив X содержит абсциссы точек, массив Y -...

Найти две точки, расстояние между которыми наибольшее
N точек задано своими координатами на плоскости: массив X содержит абсциссы точек, массив Y -...

Найти из n точек расстояние между которыми будет наибольшим
НАЙТИ ИЗ N точек расстояние между которыми будет наибольшим.написать с помощью подпрограммы функции...

4
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
28.05.2017, 07:58 2
Лучший ответ Сообщение было отмечено TKoL как решение

Решение

Цитата Сообщение от TKoL Посмотреть сообщение
scanf ("%d",x);
C
1
scanf ("%d",&x);
0
440 / 432 / 159
Регистрация: 21.05.2016
Сообщений: 1,338
28.05.2017, 08:58 3
C
1
2
if (max==-1) printf("-1");
else printf ("%d",max);
Бессмысленный if
0
Life Builder
532 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,754
28.05.2017, 10:25 4
Цитата Сообщение от TKoL Посмотреть сообщение
КОМПИЛИРУЕТСЯ ВСЁ НОРМАЛЬНО, НО ИСПОЛЬНЯТЬ ЭТА ГАДЮКА НИЧО НЕ ХОЧЕТ ИМЕННО В СЛУЧАЕ, КОГДА НА ВХОД ПОСУТПАЕТ БОЛЕЕ 5 ЧИСЕЛ
C
1
int a[5];//куда тут более пяти элеметов
Цитата Сообщение от TKoL Посмотреть сообщение
C
1
2
3
4
5
char j,c;//это в целях экономии памяти так сделано?
* * *int i;//тогда почему и этот не [B]char[/B]?  объявили бы все как один тип, они веди все равно принимают одни и те же значения
//...
for (j=0;j<4;j++){
            a[j]=a[j+1];
0
0 / 0 / 1
Регистрация: 03.04.2016
Сообщений: 17
28.05.2017, 12:32  [ТС] 5
Я РАЗОБРАЛСЯ ПАЦАНЫ!
Был выход из массива, я ЕГО ФИКСАНУЛ, а потом да вот чо-то со сканФом не пральна было...
НО ТЕПЕРЬ ТО Я СОЗДАЛ БОГОПОДОБНУЮ ПРОГРАММУ Я ПРЯМ СТРАУС ИЗ РОССИИ
Всем спасибо.
0
28.05.2017, 12:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2017, 12:32
Помогаю со студенческими работами здесь

Найти номера двух точек расстояние между которыми наибольшее
Дано координаты (x , y ) 20 точек на плоскости. Найти номера двух точек расстояние между которыми...

Найти номера двух точек, расстояние между которыми наибольшее
Задача: Даны координаты n-точек на плоскости (x;y.....Xn;Yn//n-может находится в диапазоне от...

Найти номера пары точек, расстояние между которыми наибольшее
5)Даны координаты n точек на плоскости: (X1,Y1), ...,(Xn,Yn)(n&lt;30). найти номера пары точек,...

Найти номера пары точек, расстояние между которыми наибольшее
. Даны координаты n точек на плоскости: (X1, Y1),…, (Xn , Yn)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru