Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2010, 00:29   #11
Adrenalin4
Пользователь
 
Аватар для Adrenalin4
 
Регистрация: 31.10.2010
Сообщений: 14
По умолчанию

ну когда в программе есть ошибки в этом окне они отображаются и кликая на ошибку попадаешь на ее место в программе
Adrenalin4 вне форума Ответить с цитированием
Старый 01.11.2010, 00:32   #12
nowaalex
Пользователь
 
Регистрация: 22.08.2010
Сообщений: 59
По умолчанию

аа) это называется debugger)
В Visual Stidio не работаю, но если я правильно помню, в там над логом компиляции будет квадрат такой красный
nowaalex вне форума Ответить с цитированием
Старый 01.11.2010, 00:36   #13
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию

2 nowaalex - почему в функции деление на 3? Может быть что на четных позициях стоят только два положительных элемента.
Цитата:
Код:
float count( float * array )
{
    float result = 0;
    for( int j = 0; j < 6; j++ )
        if( ( j % 2 ) == 0 && array[ j ] > 0 )
            result += array[ j ];
    return result / 3; 
}
Или я неверно понял что-то.
Изо всей благодати
В руках крепко сжатых
Я донесу только капли

Последний раз редактировалось Roof; 01.11.2010 в 00:39.
Roof вне форума Ответить с цитированием
Старый 01.11.2010, 00:38   #14
nowaalex
Пользователь
 
Регистрация: 22.08.2010
Сообщений: 59
По умолчанию

спасибо, ты понял всё правильно, а мне пора бросать отладку, которая началась с 9 утра)) Исправляю...
nowaalex вне форума Ответить с цитированием
Старый 01.11.2010, 00:49   #15
Adrenalin4
Пользователь
 
Аватар для Adrenalin4
 
Регистрация: 31.10.2010
Сообщений: 14
По умолчанию

всем огромное спасибо.
последний вопрос как добавить сюда произведение чисел с нечетными индексами(извините просто так как не показывает ошибки очень тяжело делать)
Adrenalin4 вне форума Ответить с цитированием
Старый 01.11.2010, 00:55   #16
nowaalex
Пользователь
 
Регистрация: 22.08.2010
Сообщений: 59
По умолчанию

Код:
#include <stdio.h>
int main()
{
    float count( float * array );

    float mainarray[ 6 ];

    for( int i = 0; i < 6; i++ )
        scanf( "%f", &mainarray[ i ] );

    printf( "Result: %f\n", count( mainarray ) );
    return 0;
}

float count( float * array )
{
    float result = 0;
    int numbersQuant = 0;
    for( int j = 0; j < 6; j++ )
        if( ( j % 2 ) == 0 && array[ j ] > 0 )
        {
            result += array[ j ];
            numbersQuant++;
        }
    return result / numbersQuant;
}
Вот код. Смотри на строку "if( ( J % 2 ) == 0 && array[ j ] > 0".
Она означает "если остаток от деления на 2 числа j равен нулю и j'ый элемент массива array больше нуля". Если совсем хочешь убрать классификацию чисел по четности/нечетности, то сделай "if( array[ j ] > 0 )". Если же хочешь считать ТОЛЬКО нечетные, то "( j %2 ) == 0" замени на "( j % 2 ) != 0". Успехов!
nowaalex вне форума Ответить с цитированием
Старый 01.11.2010, 01:43   #17
Adrenalin4
Пользователь
 
Аватар для Adrenalin4
 
Регистрация: 31.10.2010
Сообщений: 14
По умолчанию

Код:
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"

int main(void)
{
int b,kol=0,k,ne4=0,a[6],s=0;

for(k=0;k<6;k++)  /* ввод 6ти элементов, функция scanf*/
 scanf("%i",&a[k]);

for(k=0;k<6;k++) 
 {
   b=k%2;
   if (b==0)
	 {
       if(a[k]>0)
       {
         s=(s+a[k]);
         kol++;
       }
     }
 }

for(int k = 0; k < 6; k +=1)
{
   ne4*=a[k]
} 
printf("%f", (float)s/kol); 
printf("%f", ne4);
scanf("%f");
getch();
return 0;
}

вот эта строчка будет являтся произведением ненечетных элементов?
Код:
for(int k = 0; k < 6; k +=1)
{
   ne4*=a[k]
}
Adrenalin4 вне форума Ответить с цитированием
Старый 01.11.2010, 09:44   #18
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вот эта строчка будет являтся произведением ненечетных элементов?
Нет. Вот хотя бы так.
Код:
for(int k = 0; k < 6; k +=1)  ne4*=(a[k]%2!=0)?a[k]:1;
И не забыть что нечетных может и не быть в массиве.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.11.2010, 17:11   #19
Adrenalin4
Пользователь
 
Аватар для Adrenalin4
 
Регистрация: 31.10.2010
Сообщений: 14
По умолчанию

извиниет надо не нечетный элемент, а перемножение элементво с нечетными индексами
как то так:

Код:
for(int k=0; k<6; k++) 
{
	if (k%2)
	{
      ne4*=a[k];
	}
}
printf("%f", (float)s/kol); 
printf("     %f", ne4);
scanf("%f");
getch();
return 0;

в чем тут ошибка?

Последний раз редактировалось Adrenalin4; 01.11.2010 в 19:35.
Adrenalin4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++. Подсчёт среднего арифметического Negent Помощь студентам 1 15.08.2010 14:00
вычисление среднего арифметического по датам mori Microsoft Office Excel 6 17.12.2009 08:21
Нахождение среднего арифметического AliVe Паскаль, Turbo Pascal, PascalABC.NET 1 12.04.2007 00:25