Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.89
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
#1

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний. - C++

12.01.2011, 12:32. Просмотров 2659. Ответов 5
Метки нет (Все метки)

Написать программу, которая определяет количество учеников в классе, чей рост превышает средний.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
const int size = 5;
 
int main() {    
    setlocale(LC_ALL,"Russian");
    int arr[size], sr, sum = 0, kol = 0;
    printf("*** Анализ роста учеников ***\n");
    printf("Введите % человек\n", size);
    printf("Введите рост (см) и нажмите <Enter>.\n");
    for(int i = 0; i < size; i++) {
        printf("-> ");
        scanf("%i", &arr[i]);
        sum += arr[i];      
        sr = sum / size;
        if(arr[i] > sr) {
            kol++;
        }       
    }
    printf("Средний рост: %i см", sr);
    printf("\nУ %i человек рост превышает средний.", kol);
    system("pause >> void");
}
количество не правильно считает, почему?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2011, 12:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу, которая определяет количество учеников в классе, чей рост превышает средний. (C++):

Определить количество учеников в классе, чей рост превышает средний - C++
Написать программу, которая определяет количество уче* ников в классе, чей рост превышает средний. Рекомендуемый вид экрана во время...

Массив: определить количество учеников в классе, чей рост превышает средний. - C++
Написать программу , которая определяет количество учеников в классе , чей рост превышает средний.

Определить количество учеников класса, рост которых не превышает значение L - C++
2.Рост каждого из 25 учеников класса представлен в виде массива. Определить количество учеников, рост которых не превышает значение L.

Рост учеников класса задан в виде массива. Определить средний рост мальчиков и девочек - C++
Рост учеников класса представлен в виде массива. Определить средний рост мальчиков и девочек. Вывести сообщение кто выше девочки и ...

Найти средний рост учеников, рост самого высокого и самого низкого ученика - C++
Нужна программа с использованием структуры, вот ее условие: Ввести данные об учениках: ФИО и рост, найти средний рост учеников, рост...

Средний рост учеников - C++
Дано целое цисло. Если оно положительное, то вычислить средний рост девочек (см. задание 7), в противном случае вычислить средний рост...

5
eczo
37 / 37 / 1
Регистрация: 15.12.2010
Сообщений: 110
12.01.2011, 12:46 #2
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
#include <iostream>
 
const int size = 5;
 
int main() {    
        setlocale(LC_ALL,"Russian");
        int arr[size], sr, sum = 0, kol = 0;
        printf("*** Анализ роста учеников ***\n");
        printf("Введите % человек\n", size);
        printf("Введите рост (см) и нажмите <Enter>.\n");
        for(int i = 0; i < size; i++) {
                printf("-> ");
                scanf("%i", &arr[i]);
                sum += arr[i];          
                sr = sum / size;
                   
        }
     for(int i = 0; i < size; i++) {
        if(arr[i] > sr) 
                        kol++;        
         }
        printf("Средний рост: %i см", sr);
        printf("\nУ %i человек рост превышает средний.", kol);
        system("pause >> void");
}
не лепите все действия в один цикл. в этом была оплошность тк вы сравнивали рост ученика не с со средней всего класса а со средней учеников стоящих до него в очереди)))
2
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
12.01.2011, 12:50  [ТС] #3
eczo, а как так?? почему в одном цикле не сработало?
0
easybudda
Модератор
Эксперт CЭксперт С++
9683 / 5633 / 956
Регистрация: 25.07.2009
Сообщений: 10,812
12.01.2011, 12:55 #4
Temirlan90, мало того - для подобных вычислений нужно использовать вещественные типы данных (float, double), т.к. в результате целочисленного деления среднее будет считаться с округлением до меньшего целого, а это не правильно...
2
Card1nal
6 / 6 / 0
Регистрация: 04.01.2010
Сообщений: 118
12.01.2011, 12:56 #5
Вот пример :
1, 2, 3, 4, 200
Сколько человек выше среднего? 1
А у тебя:
1) 1 : сумма = 1, 1/5 = 0, входит
2) 2: сумма = 3, 3/5 = 0, входит
3) 3: сумма = 6, 6/5 = 1, входит
4) 4: сумма = 10, 10/5 = 2, входит.
5) 200: сумма = 210, 210 / 5 = 42, входит.
1
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
12.01.2011, 13:17  [ТС] #6
easybudda, да я в курсе, мне просто в лом было=)

Добавлено через 8 минут
easybudda,
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
#include <iostream>
 
const int size = 5;
 
int main() {    
        setlocale(LC_ALL,"Russian");
        float arr[size], sr, sum = 0;
        int kol = 0;
        printf("*** Анализ роста учеников ***\n");
        printf("Введите % человек\n", size);
        printf("Введите рост (см) и нажмите <Enter>.\n");
        for(int i = 0; i < size; i++) {
                printf("-> ");
                scanf("%f", &arr[i]);
                sum += arr[i];          
                sr = sum / size;                   
        }
        for(int i = 0; i < size; i++) {
            if(arr[i] > sr) 
                kol++;        
        }
        printf("Средний рост: %1.2f см", sr);
        printf("\nУ %i человек рост превышает средний.", kol);
        system("pause >> void");
}
так правильно=).

Добавлено через 1 минуту
А у меня вопрос, двумерные массивы, это сложно?
0
12.01.2011, 13:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2011, 13:17
Привет! Вот еще темы с ответами:

Средний рост учеников - C++
Задачка с ростом учеников. Нужно написать программу, в которой пользователь вводит несколько трехзначных числовых значений, после...

Написать программу, которая определяет количество букв «а» в тексте - C++
помогите, очень надо, скоро модуль по инфе: Написать программу, которая считывает информацию из файла и определяет количество букв «а» в...

Вычислить средний рост учеников - C++
Помогите пожалуста В таблице хранятся следующие данные об учениках: фамилия, имя, отчество, рост, масса. Вычислить средний рост учеников,...

Написать программу, которая определяет количество различных символов в строке - C++
Дана строка. Требуется написать программу, которая определяет количество различных символов в этой строке. Строчные и заглавные буквы не...


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

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

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