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

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

Войти
Регистрация
Восстановить пароль
 
acd
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 11
#1

процедуры и функции - C++

16.05.2009, 10:32. Просмотров 568. Ответов 7
Метки нет (Все метки)

Задание - вычислить произведение членов ряда с заданной точностью и использованием функций. Получилось следующие:
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
34
35
36
37
#include<stdio.h>
#include<conio.h>
 
int n,a; 
float factorial(int f) 
float raschet(float a) // здесь пишет Declaration syntax error
 
float factorial(int f) 
{
 int i;
 f=1;
 for(i=1;i<=n;i++) f*=1; //factorial nahodit
 return(f);
}
float raschet(float a)
{
    float s,ch; //s=summa ch ryada
    n=1;
    ch=1;
    s=0;
    while(ch>a)
    {
    ch=(0.5*(2+0.1*factorial(n));
    s*=ch;
    n++;
    }
    retirn(s);
}
void main(void)
{
clrscr();
printf("Sostavitel: 123");
printf("\n\nEnter a (tochnost rascheta): ");
scanf("%f",&a);
printf("Proizvedeniye ravno s=%f",raschet(a));
getch();
}
Подскажите,пожалуйста, в чем ошибка?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2009, 10:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос процедуры и функции (C++):

Задачник Абрамян. Процедуры и функции. Процедуры с числовыми параметрами - C++
Описать процедуру RectPS(x1, y1, x2, y2, P, S), вычисляющую периметр P и площадь S прямоугольника со сторонами, параллельными осям ко- ...

Подпрограммы-процедуры и процедуры-функции - C++
Мне надо вычислить приближенное значение интеграла с помощью подпрограммы-процедуры и процедуры-функции. Я не могу ничего найти в...

Задачник Абрамян. Процедуры и функции. Функции с числовыми параметрами - C++
Описать функцию Even(K) логического типа, возвращающую TRUE, если целый параметр K является четным, и FALSE в противном случае. С ее...

Процедуры. Процедуры-функции - C++
Даны три прямоугольные матрицы. Найти след каждой матрицы и вывести на печать значения наименьшего по модулю следа. Вычисление следа...

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

Процедуры и функции - C++
Два простых числа называются ,,близнецами,, если они отличаются друг от друга на 2 (например 41 и 43). Напечатать все пары ,,близнецов,, из...

7
RazorQ
577 / 344 / 9
Регистрация: 06.02.2009
Сообщений: 1,386
16.05.2009, 10:38 #2
Убери прототипы функций вообще.

Добавлено через 3 минуты 1 секунду
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
34
35
#include<stdio.h>
#include<conio.h>
 
int n,a; 
 
float factorial(int f) 
{
 int i;
 f=1;
 for(i=1;i<=n;i++) f*=1; //factorial nahodit
 return(f);
}
float raschet(float a)
{
        float s,ch; //s=summa ch ryada
        n=1;
        ch=1;
        s=0;
        while(ch>a)
        {
        ch=(0.5*(2+0.1*factorial(n)));
        s*=ch;
        n++;
        }
        return(s);
}
int main(void)
{
printf("Sostavitel: 123");
printf("\n\nEnter a (tochnost rascheta): ");
scanf("%f",&a);
printf("Proizvedeniye ravno s=%f",raschet(a));
getch();
return 0;
}
1
BullDogoff
10 / 10 / 1
Регистрация: 16.05.2009
Сообщений: 30
16.05.2009, 10:40 #3
Прототип функции заканчивается точкой с запятой.. Имеет смысл объявлять прототип в том случае, если тело функции располагается после тела main()..
З.Ы.: Пишем-то на плюсах - можно iostream.h пользовать..
0
Rififi
2359 / 1052 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
16.05.2009, 10:40 #4
в строке 6 предварительное определение функции должно заканчиваться оператором ";"
в 27 не retirn а return.
глобальная переменная и параметр функции названы одинаково - могут быть проблемы

вроде всё.
по самому алгоритму ничего не могу сказать - не вникал.
0
acd
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 11
16.05.2009, 11:17  [ТС] #5
спасибо. убрал прототипы функции - ошибок больше не находит ( retirn - невнимательность моя).
Но программа запускаться не хочет. Значит алгоритм неправильный?
0
BullDogoff
10 / 10 / 1
Регистрация: 16.05.2009
Сообщений: 30
16.05.2009, 11:28 #6
Может, я слепой.. Но если ряд состоит из целых чисел, как результат их перемножения может быть дробным?
1
Evg
Эксперт CАвтор FAQ
17941 / 6172 / 412
Регистрация: 30.03.2009
Сообщений: 16,942
Записей в блоге: 27
16.05.2009, 11:48 #7
В 12-й строке написано "f*=1", а нужно "f*=i"

Цитата Сообщение от acd Посмотреть сообщение
Но программа запускаться не хочет
Что значит запускаться не хочет?
0
acd
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 11
16.05.2009, 11:56  [ТС] #8
Цитата Сообщение от Evg Посмотреть сообщение
В 12-й строке написано "f*=1", а нужно "f*=i"



Что значит запускаться не хочет?
при нажатии run (ctrl+F9) ничего не происходило. В 34-35 заменил на %d - заработало.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2009, 11:56
Привет! Вот еще темы с ответами:

Процедуры и функции. - C++
1) Разработав подпрограмму определения количества нулевых элементов матрицы, вычислить его для матрицы А(КхМ) К=5, М=3. А={{-2 4 3}{5 0...

Функции и процедуры! - C++
Пользуясь подпрограммой перестановки двух строк прямоугольного массива, у массива А(КхМ) переставить 1-ю и 3-ю, а также 2-ю и 4-ю строки. ...

Процедуры /функции - C++
http://s1.ipicture.ru/uploads/20120115/GaG9fHSr.jpg помогите с задачей если вам не трудно

Процедуры и функции - C++
Сформировать матрицу C(5,5) элементы которой являются значениями определенного интеграла: C(I,J)=(i+j)/20 - верхний предел I/20...


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
16.05.2009, 11:56
Ответ Создать тему
Опции темы

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