Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
sm0og1er
0 / 0 / 2
Регистрация: 22.10.2013
Сообщений: 66
1

Ничего не получается

22.10.2013, 15:42. Просмотров 258. Ответов 7
Метки нет (Все метки)

#include "stdafx.h";
#include "iostream"
using namespace std;

void main ()
{
setlocale (0, "rus");
cout <<"Легензов Е.Ю\n";
cout <<"\nЗадание 7.1\n";
const int N = 10;
int array[N];
for (int i=0; i<N; i++)
{
cout << "Введите " << i <<" -й элемент массива: ";
cin >> array[i];

}

cout <<"\nЗадание 7.2\n";
int i;
int max; // максимальный элемент
max = array[0]; //нахождение максимального элемента
for (i = 1; i < N; i++)
if (max < array[i])
{
int temp = array[i];
array[i] = max;
max = temp;
}
cout <<"Максимальный элемент " << max << endl;


cout <<"\nЗадание 7.3\n";
double min_count = 0; // счётчик минимальный элементов
double min_sum = 0; // сумма минимальных элементов
for (i = 0; i < N; i++) // среднеарифметическое отрицательных элементов массива
if(array[i] < 0)
{
min_sum += array[i];
min_count++;
}
cout <<"Среднее " << (min_sum / min_count) <<endl;





cout <<"\nЗадание 7.4\n";
for (i = N - 1 ; i > 0; i--) // обратный вывод

cout << array[i] << " ";
cout << endl;


В задание 7.3 при вводе положительных цифр среднеарифм. пишет -1, пробывал вписывать цикл, не получается.
В задание 7.4 в обратном ввыводе не выводит одну цифру ( которая максимальная).
Заранее благодарен
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2013, 15:42
Ответы с готовыми решениями:

Первые шаги: ничего не получается
Всем привет! Я скачала советуемую здесь на форуме версию wxDev-C++ 7.3.1. Но...

Подскажите, как вывести знак фунта в консоли - перепробовал кучу способов, ничего не получается
Не получается вывести знак фунта, вместо него выводит знак вопроса, пробовал...

Ничего не работает
Скачал Borland C++ Builder, dev c++, visual C++ 6, visual studio 2010 и когда я...

Почему ничего не возвращается?
Помогите, пожалуйста, разобраться, почему на выходе ничего не...

Всего ничего, списочек)
Товарищи, я надеюсь в вашу помощь в решение задачки( написать программу,...

7
Raali
639 / 343 / 74
Регистрация: 06.07.2013
Сообщений: 1,107
Завершенные тесты: 1
22.10.2013, 15:48 2
в задании 7.2 элементы массива изменяются
Цитата Сообщение от sm0og1er Посмотреть сообщение
array[i] = max;
соответственно на 7.3 и на 7.4 повлияет
1
rpsv
50 / 46 / 16
Регистрация: 14.10.2013
Сообщений: 161
22.10.2013, 15:48 3
sm0og1er, для задания 7.4 исправьте условие: нужно >= 0 !

C++
1
2
3
4
5
6
cout <<"\nЗадание 7.4\n";
for (i = N - 1 ; i >= 0; i--)
{
    cout << array[i] << " ";
}
cout << endl;
1
sm0og1er
0 / 0 / 2
Регистрация: 22.10.2013
Сообщений: 66
22.10.2013, 15:53  [ТС] 4
ps. 7.3 сделал
0
rpsv
50 / 46 / 16
Регистрация: 14.10.2013
Сообщений: 161
22.10.2013, 15:57 5
sm0og1er, задание 7.2:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
cout <<"\nЗадание 7.2\n";
//
// Приводим максимальный элемент к самому минимальному
//
int max = INT_MIN;
//
for (int i = 0; i < N; i++)
{
    if (max < array[i])
    {
        max = array[i];
    }
}
cout <<"Максимальный элемент " << max << endl;
Задание 7.3 лучше так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
cout <<"\nЗадание 7.3\n";
//
// счётчик минимальный элементов (лучше всего INT)
//
int min_count = 0;
//
// сумма минимальных элементов
//
double min_sum = 0;
//
for (int i = 0; i < N; i++)
{
    if(array[i] < 0)
    {
        min_sum += array[i];
        min_count++;
    }
}
cout <<"Среднее " << (min_sum / min_count) <<endl;
1
sm0og1er
0 / 0 / 2
Регистрация: 22.10.2013
Сообщений: 66
22.10.2013, 15:58  [ТС] 6
Цитата Сообщение от rpsv Посмотреть сообщение
sm0og1er, для задания 7.4 исправьте условие: нужно >= 0 !

C++
1
2
3
4
5
6
cout <<"\nЗадание 7.4\n";
for (i = N - 1 ; i >= 0; i--)
{
    cout << array[i] << " ";
}
cout << endl;
Та же история. Например, при вводе цифр 1.2.3.4.5.6.7.8.9.10 - в ответе обратный вывод выводит 9.8.7......, 10 пропускает (
0
rpsv
50 / 46 / 16
Регистрация: 14.10.2013
Сообщений: 161
22.10.2013, 16:00 7
sm0og1er, потому что у вас N = 10! И получается что он у вас только 10 первых элементов и выведет!

Добавлено через 40 секунд
В отладке посмотрите какой у вас массив приходит на вход!
1
sm0og1er
0 / 0 / 2
Регистрация: 22.10.2013
Сообщений: 66
22.10.2013, 16:03  [ТС] 8
Спасибо большое!
0
22.10.2013, 16:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2013, 16:03

Не записывает ничего в файл
Добро всем утро! Надеюсь хоть у кого-то оно доброе=) Помогите пжл с...

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

Почему я ничего не понимаю в C++?
Я пол года изучаю этот язык и ничего не понимаю, выезжаю за счёт вопросов на...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru