13.11.2012, 12:31 | #1 (permalink) |
Новичок
Регистрация: 13.11.2012
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Задача на Си
1.Количество используемых членов ряда–n. 2.Точкаx,в которой требуется вычислить приближенное значениеf(x).Проверить полученные результаты для допустимыхx,сравнив их с эталонными значениями приближаемых функций. #include <stdio.h> #include <conio.h> int fact(int x) { int result = 1; for (int i = 1; i <= x; i++) { result *= i; } return result; } main() { float n,x,a=1,z; printf("Input n:"); scanf("%f", &n); printf("Input x:"); scanf("%f", &x); for(z=1;z<=n;z++){ a = a + x / fact(z); x=x*x; } printf("Result: %f", a); getch(); return 0; } //выводит неправильный ответ( |
13.11.2012, 12:31 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Очень полезно сначала прочитать схожие темы Задача с if Задача C++ Задача на C# Задача по С + + Задача по С++ Задача |
13.11.2012, 12:44 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Угу. Что естественно.
К сожалению, на С я не пишу, а поэтому попробую изложить алгоритм, как правильно. 1. Функция Fact здесь не нужна вовсе. 2. Вводим различные идентификаторы для слагаемого (a) и для суммы (S). Исходные значения: a = 1 S = 1 3. Цикл строим так: a = a*x/z S = S + a |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|