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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.01.2013, 16:35   #1
Caca0
Пользователь
 
Регистрация: 31.01.2013
Сообщений: 50
По умолчанию Ошибочный код.Язык Си

Ошибка в коде,помогите найти и исправить
Может вообще в корне неправльно?!
Задание:
Написать программу,которая по заданному натуральному значению n и действительному x вычисляет результат выражения:
G=x^n+2x^(n-1)+3x^(n-2)+...+(n-2)x^2+(n-1)x+n

КОД:
Код:
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n, x, i;
    float g=0;
    puts("Vvedite n");
    scanf ("%d",&n);
    puts("Vvedite x");
    scanf("%d", &x);
    for(i=0;i<n;i++)
    {
        g+=((n-2)*x*x)+((n-1)*x)+n;
    }
    printf("G=%f",g);
    getch();
    return 0;
}
Caca0 вне форума Ответить с цитированием
Старый 31.01.2013, 18:28   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Неправильно.
1) Возведение в степень выполняется с помощью функции pow() (ну, или по схеме Горнера - такое решение будет более правильным, но менее прозрачным).
2) У Вас (n+1) слагаемое, посчитайте внимательно. k-е слагаемое можно записать так (k пробегает значения от 0 до n):
(k+1)*x^(n-k). Соответственно, на C++ это будет (k+1)*pow(x, n-k).
Именно это и надо прибавлять к g, при k пробегающем от 0 до n.
3) Вы уверены, что x должна быть целочисленной переменной?
Abstraction вне форума Ответить с цитированием
Старый 31.01.2013, 18:32   #3
Caca0
Пользователь
 
Регистрация: 31.01.2013
Сообщений: 50
По умолчанию

исправте пожалуйста)
Caca0 вне форума Ответить с цитированием
Старый 31.01.2013, 18:41   #4
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
исправте пожалуйста)
Цитата:
помогите найти и исправить
Если родом помощи по умолчанию Вы считаете "сделать за меня", дело Ваше.
Abstraction вне форума Ответить с цитированием
Старый 31.01.2013, 20:42   #5
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
Хорошо

Abstraction уже написал решение задачи. В виде кода:
Код:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
	int n, x;
	int i;			// Счетчик
	double G = 0.0;

	system("chcp 1251 > nul");

	printf(" Введите (n): ");
		scanf("%d", &n);
	printf(" Введите (x): ");
		scanf("%d", &x);

	for(i = 0; i < n; i++)
		G += (i + 1) * pow(x, n - i);
	printf(" ****************\n");
	printf(" Ответ: G = %.1lf \n", G + n);
	
	getch();
	return 0;
}
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 31.01.2013, 21:10   #6
Caca0
Пользователь
 
Регистрация: 31.01.2013
Сообщений: 50
По умолчанию

Abstraction,вы такой злой.
Bugrimov,вам спасибо огромнейшее,вы меня сегодня спасли,суперспасибо)
Caca0 вне форума Ответить с цитированием
Старый 31.01.2013, 21:15   #7
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Caca0
Злой?
Вам подробно описали все решение, с чего же он злой?
Хотя, я смотрю, вы просто уже привыкли к халяве.
Совести у вас нет.
Базиля вне форума Ответить с цитированием
Старый 31.01.2013, 21:22   #8
Caca0
Пользователь
 
Регистрация: 31.01.2013
Сообщений: 50
По умолчанию

вам что щас нужно?причем тут халява,попросил помочь,мне помог супер человек,и не переломился,как вы все,ему большая благодарность,помоему тема:помощь студентам,если я прошу помочь подробно,что в этом плохого?
Caca0 вне форума Ответить с цитированием
Старый 31.01.2013, 21:24   #9
Caca0
Пользователь
 
Регистрация: 31.01.2013
Сообщений: 50
По умолчанию

если вы не хотите помогать,дак лучше молчите
Caca0 вне форума Ответить с цитированием
Старый 31.01.2013, 21:28   #10
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Caca0
Читаем правила форума внимательней.
Что именно там подразумевается под помощью.
Цитата:
если вы не хотите помогать,дак лучше молчите
Ну уж точно не вам положено давать мне указания
Базиля вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Язык СИ. Нужно написать код Newb1e Фриланс 6 27.03.2012 01:37
проблема с циклом for , код и ошибка внутри(Язык Си) Bolisoff Помощь студентам 1 27.02.2012 01:35
куплю код проги язык Ruby gal1178 Фриланс 2 26.01.2010 21:24
Компилятор игнорирует ошибочный код N1KeL Помощь студентам 8 29.11.2009 21:22
Помогите перевести на язык делфи код с С++! SkAndrew Общие вопросы Delphi 9 21.05.2009 18:49