2 / 2 / 0
Регистрация: 24.02.2019
Сообщений: 138
1

Можете , пожалуйста , объяснить что делают эти строчки из кода

10.03.2019, 22:48. Показов 1294. Ответов 4
Метки нет (Все метки)

Я начинаю ... и хочу понят , как это работает

Вот код ... который считает средний рост учеников ... и показывает количество учеников у которых рост выше среднего

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
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <locale.h> 
 
const int size = 5;
 
int main() {    
        setlocale(LC_ALL,"Russian");
        float ucheniki[size]; //количесвто учеников(рост)
        float sr; // средне арифм
        float sum = 0; // сумма роста учеников 
        int kol = 0; //количество учеников превышающие sr(среднее)
        printf("*** Анализ роста учеников ***\n");
        printf("Введите % человек\n", size);
        printf("Введите рост (см) и нажмите <Enter>.\n");
        for(int i = 0; i < size; i++) {
                printf("-> ");
                scanf("%f", &ucheniki[i]);
                sum += ucheniki[i];          
                sr = sum / size;                   
        }
        for(int i = 0; i < size; i++) {
            if(ucheniki[i] > sr) 
                kol++;        
        }
        printf("Средний рост: %1.2f см", sr);
        printf("\nУ %i человек рост превышает средний.", kol);
        getch();
}
Добавлено через 2 минуты
Объясните , пожалуйста , как работает этот фграмент

C++
1
2
3
4
5
for(int i = 0; i < size; i++) {
                printf("-> ");
                scanf("%f", &ucheniki[i]);
                sum += ucheniki[i];          
                sr = sum / size;
как работает данная строчка
C++
1
for(int i = 0; i < size; i++)
И что означает после переменной два плюса ? ( i++)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2019, 22:48
Ответы с готовыми решениями:

Описать строчки кода, что они делают!
Код программы: #include &lt;iostream&gt; #include &lt;time.h&gt; using namespace std; int main() {...

Что делают строчки 29-47 в коде,объясните
//--------------------------------------------------------------------------- #include&lt;iostream.h&gt;...

Что делают строчки в данном коде?
Задание было, расставить #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; #include...

Что делают строчки 35-36,не могу разобраться
//--------------------------------------------------------------------------- #include&lt;iostream.h&gt;...

4
29 / 17 / 14
Регистрация: 19.12.2018
Сообщений: 104
10.03.2019, 23:19 2
Это цикл по переменной. i++ означает прибавление к переменной i 1

Добавлено через 15 минут
Цитата Сообщение от DREDON Посмотреть сообщение
for(int i = 0; i < size; i++)
UPD: забыл объяснить, как работает.
Цикл будет работать до тех пор, пока переменная i меньше чем size, с каждой итерацией переменная i увеличивается на 1.

Добавлено через 3 минуты
Цитата Сообщение от DREDON Посмотреть сообщение
for(int i = 0; i < size; i++) {
* * * * * * * * printf("-> ");
* * * * * * * * scanf("%f", &ucheniki[i]);
* * * * * * * * sum += ucheniki[i]; * * * * *
* * * * * * * * sr = sum / size;
в цикле с каждой итерацией к sum прибавляется ucheniki[i], а sr становится равным sum делённый на size
Всё же просто и понятно, вроде как.
0
7416 / 5011 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
11.03.2019, 02:37 3
DREDON, код не очень и подсчитывает не всегда правильно. например для для size=3 и 108 108.3 108.6 выдаёт
2 (правильный ответ 1). Вам нужен код на С или на С++ ?
0
2 / 2 / 0
Регистрация: 24.02.2019
Сообщений: 138
11.03.2019, 06:19  [ТС] 4
c++
0
7416 / 5011 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
11.03.2019, 14:02 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
24
25
26
27
28
29
30
31
32
33
#include <iostream>
using namespace std;
 
int main()
{   
    int n, count=0;
    double sum=0.0, delta, eps=1e-9;
    // вводим количество учеников (задаём размер массива)
    cout << "n="; cin >> n; 
    
    // объявление динамического массива 
    double*a = new double[n]; 
    
    // заполнение массива значениями: 
    cout << "Enter " << n << " elements:\n";
    for(int i = 0; i < n; i++) 
    {
        cin >> a[i];        
        sum+=a[i]; // суммируем значения массива      
    }
    
    delta=sum/n; // среднее арифметическое вычисляем ВНЕ цикла                   
    
    for(int i = 0; i < n; i++)    
        if(a[i]-delta>eps) count++; // если значение массива больше среднего увеличиваем счётчик на 1
        
    cout << "count=" << count << "\n";    
    
    // освобождение памяти
    delete[]a;
system("pause");
return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2019, 14:02
Помогаю со студенческими работами здесь

Подскажите что делают эти функции
ifstream fin(filename, ios::out); #define MAX_WORD 1000 char buffer; fin &gt;&gt; buffer; len =...

Объясните что делают эти команды
Доброй ночи. Объясните что делает здесь каждая команда/функция Вот код void show_files(const...

Не могли бы вы объяснить простыми словами что делают функции calloc в данном примере
Не могли бы вы объяснить простыми словами что делают функции calloc в данном примере? struct...

Можете объяснить что делает этот код?
#include &lt;iostream&gt; using namespace std; int main() { char s; cin&gt;&gt;s; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru