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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2017, 14:12   #1
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию нужно подправить прогу

float M = sqrt(sum2)/n; // количество целых чисел вот в этой строке я поделил на n а нужно делить на количество целых чисел как исправить?

Код:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <locale.h>
#include <malloc.h>


int main()
{
    int n,i; //количество чисел
    float *x; //массив этих чисел

    setlocale(LC_CTYPE, "Rus"); //Русский язык в консоле

    printf("Введите количество чисел в последовательности: ");
    scanf("%d", &n);


    //Выделение памяти под массив
    x = (float*)malloc(n * sizeof(float));


    //Считывание массива
    printf("Введите по одному %d чисел:\n", n);
    for( i = 0; i < n; i++){
        scanf("%f", &x[i]);
    }


    //Cчитаем M
    float sum2 = 0;
    for( i = 0; i < n; i++){
        if(x[i] == roundf(x[i])) //Вначале суммируем квадраты всех целых чисел
            sum2 += x[i]*x[i];
    }

    //Досчитываем и выводим M
    float M = sqrt(sum2)/n; // количество целых чисел
    printf("Число M для данной последовательности: %f", M);

    //Освобождаем память
    free(x);
    return 0;
}
_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 07.11.2017 в 17:22.
Александр121 вне форума Ответить с цитированием
Старый 07.11.2017, 14:32   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Заведите отдельный счётчик. И в том же месте, где считаете сумму, прибавляйте 1.
Black Fregat вне форума Ответить с цитированием
Старый 07.11.2017, 14:53   #3
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

можешь показать как?
Александр121 вне форума Ответить с цитированием
Старый 07.11.2017, 17:24   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
можешь показать как?
Код:
....
    //Cчитаем M
    float sum2 = 0;
    int count = 0;
    for( i = 0; i < n; i++){
        if(x[i] == roundf(x[i])){ //Вначале суммируем квадраты всех целых чисел
            sum2 += x[i]*x[i];
            count++;
        }
    }

    //Досчитываем и выводим M
    if(count==0){
        printf("Нет таких чисел в последовательности");
    else{
        float M = sqrt(sum2)/n; // количество целых чисел
        printf("Число M для данной последовательности: %f", M);
    }
....

Последний раз редактировалось Serge_Bliznykov; 07.11.2017 в 23:31. Причина: исправил ошибку - добавил отсутствующие операторные скобки после if
Serge_Bliznykov вне форума Ответить с цитированием
Старый 07.11.2017, 17:40   #5
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Только там операторные скобки ещё нужно поставить.
Black Fregat вне форума Ответить с цитированием
Старый 07.11.2017, 23:30   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Black Fregat Посмотреть сообщение
Только там операторные скобки ещё нужно поставить.
точно. исправил в коде
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно подправить калькулятор VTEC Фриланс 2 08.03.2017 22:12
Нужно подправить код html daniilak Помощь студентам 0 12.11.2013 18:37
подправить прогу nata34 Помощь студентам 0 07.10.2013 18:12
нужно подправить задачку mashat99 Паскаль, Turbo Pascal, PascalABC.NET 1 21.03.2011 00:27
Нужно подправить код zeppelin58 Общие вопросы C/C++ 1 28.05.2010 12:11