ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 06.02.2010, 03:09
XimiK69
Новичок
Регистрация: 02.01.2010
Сообщений: 26
С нами: 8608173

Репутация: 15
По умолчанию

Цитата:
Сообщение от becensed  
с++ не люблю. Вот тебе на Си (алгоритм простой, перепишешь, если что)
Код:
#include <stdio.h>
#include <math.h>

#define n 10

int summ(int a[])
{
    int result = 0;

    for (int i=0; i<=n; i++)
    {
        if(a[i] < 0)
        {
            result = abs(a[i+1]) + abs(a[i+2]);
            break;
        }
    }
    
    return result;
}

void main()
{
    int a[n] = {1,5,11,-5,2,-1,3,2,9,-2};
    printf("Summa = %d", summ(a));
}

//EOF
примерно так.
Не понял твой код, а если отрицательное число стоит в конце массива? То ты своим условием
Код:
abs(a[i+1]) + abs(a[i+2]);
выйдешь за границы массива. Попробуй на этом контр примере запустить программу
Код:
int a[n] = {1,5,11,5,2,1,3,2,9,-2};
И зачем определять n, если можно так
Код:
int n = sizeof(a)/sizeof(int);
 
Ответить с цитированием
 



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Американским студентам запретили пользоваться Skype KPOT_f!nd Мировые новости. Обсуждения. 1 28.09.2006 03:47
Любителям квестов сюда!! FoX's Болталка 10 25.01.2005 20:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.