Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Студентсмертный
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 39
1

Вычислить объем цилиндра по известному радиусу основания и высоте

22.12.2012, 17:39. Просмотров 968. Ответов 11
Метки нет (Все метки)

Задание:Задание: Написать программу, вычисляющую объем цилиндра по известному радиусу основания и высоте. Расчет должен производиться в функции, которая получает данные по ссылке и возвращает результат по ссылке.

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 "stdafx.h"
#include "math.h"
 
#define PI 3.141592653589793
void print(double V)
{
printf("V= %f\n",V);
}
double F(double,double);
 int main(void)
 {
double R,h,V;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&R,&h)==2)&&(R>0)&&(h>0))
 {
     V=F(R,h);
     print(V);
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
}
 double F(double R,double h)
 { 
     double V;
     V=PI*R*R*h;
     return (V);
 }


КАК СДЕЛАТЬ С ИСПОЛЬЗОВАНИЕМ ССЫЛОК?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2012, 17:39
Ответы с готовыми решениями:

Функция нахождения объема цилиндра по его радиусу основания и высоте
Составить функцию нахождения объема цилиндра по его радиусу основания r и высоте. С помощью данной...

Составить функцию нахождения объема цилиндра по его радиусу основания r и высоте
Помогите пожалуйста решить эти задачи.:-) 2)Составить функцию нахождения объема цилиндра по его...

Составить функцию нахождения объема цилиндра по его радиусу основания r и высоте
Составить функцию нахождения объема цилиндра по его радиусу основания r и высоте. С помощью данной...

Вычислить объем цилиндра с радиусом основания r и высотой h
вычислить объем цилиндра с радиусом основания r и высотой h. V=п*r^2*h

Вычислить объем цилиндра с радиусом основания r и высотой h. V = π *r2*h
Вычислить объем цилиндра с радиусом основания r и высотой h. V = π *r2*h

11
Agent Smith
40 / 40 / 32
Регистрация: 24.11.2012
Сообщений: 200
22.12.2012, 18:01 2
ну насколько я понял задание выглядеть это должно как-то так:
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
#include "stdafx.h"
#include "math.h"
 
#define PI 3.141592653589793
void print(double* V)
{
printf("V= %f\n",*V);
}
double F(double*,double*);
 int main(void)
 {
double R,h;
double* V;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&R,&h)==2)&&(R>0)&&(h>0))
 {
     V=F(R,h);
     print(V);
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
}
 double* F(double* R,double* h)
 { 
     double* V;
     *V=PI*(*R)*(*R)*(*h);
     return (V);
 }
0
Студентсмертный
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 39
22.12.2012, 18:26  [ТС] 3
Цитата Сообщение от Agent Smith Посмотреть сообщение
ну насколько я понял задание выглядеть это должно как-то так:
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
#include "stdafx.h"
#include "math.h"
 
#define PI 3.141592653589793
void print(double* V)
{
printf("V= %f\n",*V);
}
double F(double*,double*);
 int main(void)
 {
double R,h;
double* V;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&R,&h)==2)&&(R>0)&&(h>0))
 {
     V=F(R,h);
     print(V);
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
}
 double* F(double* R,double* h)
 { 
     double* V;
     *V=PI*(*R)*(*R)*(*h);
     return (V);
 }
выдает ошибку на 9ой строчке (подчеркнуто F) и на 17ой(подчеркнуты R,h)
0
Agent Smith
40 / 40 / 32
Регистрация: 24.11.2012
Сообщений: 200
22.12.2012, 18:32 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
31
//#include <stdafx.h>
#include "math.h"
 
#define PI 3.141592653589793
void print(double* V)
{
printf("V= %f\n",*V);
}
double* F(double*,double*);
 int main(void)
 {
double R,h;
double* V;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&R,&h)==2)&&(R>0)&&(h>0))
 {
     V=F(&R,&h);
     print(V);
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
}
 double* F(double* R,double* h)
 { 
     double* V;
     *V=PI*(*R)*(*R)*(*h);
     return (V);
 }
Добавлено через 2 минуты
расскоментируй stdafx.h если без неё не работает. просто мой борланд не знает что это за библиотека. подозреваю что ты пишешь в vc
0
Студентсмертный
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 39
22.12.2012, 18:53  [ТС] 5
Цитата Сообщение от Agent Smith Посмотреть сообщение
прошу прощения. исправил
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
//#include <stdafx.h>
#include "math.h"
 
#define PI 3.141592653589793
void print(double* V)
{
printf("V= %f\n",*V);
}
double* F(double*,double*);
 int main(void)
 {
double R,h;
double* V;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&R,&h)==2)&&(R>0)&&(h>0))
 {
     V=F(&R,&h);
     print(V);
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
}
 double* F(double* R,double* h)
 { 
     double* V;
     *V=PI*(*R)*(*R)*(*h);
     return (V);
 }
Добавлено через 2 минуты
расскоментируй stdafx.h если без неё не работает. просто мой борланд не знает что это за библиотека. подозреваю что ты пишешь в vc
извиняюсь,что снова беспокою,но после введения значений выводит ошибку
Вычислить объем цилиндра по известному радиусу основания и высоте
это ошибка из-за VS?
0
Agent Smith
40 / 40 / 32
Регистрация: 24.11.2012
Сообщений: 200
22.12.2012, 22:12 6
а вы пробовали выполнение по шагам? просто непонятно в какой функции проблемы с V. сделайте чтобы в каждой ф-ии было свое имя для этой переменной и выложите ошибку снова. или выполните по шагам и отпишитесь в какой ф-ии проблемы.
0
MrGluck
Модератор
Эксперт CЭксперт С++
8113 / 4965 / 1436
Регистрация: 29.11.2010
Сообщений: 13,456
22.12.2012, 22:50 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
#include <stdio.h>
#include <malloc.h>
#include <math.h>
#include <locale.h>
#define PI 3.141592653589793
 
float* F(float *, float *);
 
int main(void)
{
    float R, h;
    setlocale(LC_ALL, "");
    printf("Ââåäèòå Г°Г*äèóñ: ");
    scanf("%f", &R);
    printf("Ââåäèòå âûñîòó: ");
    scanf("%f", &h);
    if (R > 0 && h > 0)
        printf("ГЋГЎГєГҐГ¬ Г°Г*ГўГҐГ* %.2f\n", *F(&R, &h));
    else
        printf("ÂâåäåГ*Г® Г*åêîððåêòГ*îå Г§Г*Г*Г·ГҐГ*ГЁГҐ\n"); 
    return 0;
}
 
float* F(float* R, float* h)
{
    float *V = (float*) malloc(sizeof(float));
    *V = PI * (*R) * (*R) * (*h);
    return V;
}
1
Студентсмертный
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 39
22.12.2012, 23:42  [ТС] 8
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
#include "stdafx.h"
#include "stdafx.h"
#include "math.h"
 
#define PI 3.141592653589793
double F(double &R,double &h,double &V)
 { 
     V=PI*R*R*h;
     return (V);
 }
 int main(void)
 {
double H,r,v=0;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&r,&H)==2)&&(r>0)&&(H>0))
 {
     F(r,H,v);
     printf("V= %f\n");
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
 return 0;
}
0 ВЫДАЕТ,ПОМОГИТЕ ИСПРАВИТЬ,НЕ МОГУ НАЙТИ ОШИБКУ
0
uburuntu
95 / 95 / 58
Регистрация: 04.10.2012
Сообщений: 189
22.12.2012, 23:52 9
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#define PI 3.141592653589793
double F(double R,double h,double V)
 { 
     V=PI*R*R*h;
     return (V);
 }
 
 int main(void)
 {
double H,r,v=0;
  printf("Vvedite posledovatelno R,h\n");
 if ((scanf("%lf%lf",&r,&H)==2)&&(r>0)&&(H>0))
 {
     printf("V= %lf\n", F(r,H,v));
     return 0;
 }
 else
 {
    printf("Vvedeno necorrectnoe znachenie\n"); 
 }
 return 0;
}
1
xtorne21st
интересующийся
305 / 276 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
23.12.2012, 00:28 10
Цитата Сообщение от Студентсмертный Посмотреть сообщение
double F(double &R,double &h,double &V)
Это одно из отличай С от С++. Аргументы не могут передаваться в виде ссылке (в отличай от С++). А только в виде копий или указателей.
0
alkagolik
Заблокирован
23.12.2012, 03:08 11
Цитата Сообщение от Студентсмертный Посмотреть сообщение
Расчет должен производиться в функции, которая получает данные по ссылке и возвращает результат по ссылке.
Си этого не умеет.
0
Agent Smith
40 / 40 / 32
Регистрация: 24.11.2012
Сообщений: 200
25.12.2012, 13:49 12
MrGluck, поясните пожалуйста смысл вот это строки:
C
1
float *V = (float*) malloc(sizeof(float));
все, понял. вопрос снят
0
25.12.2012, 13:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2012, 13:49

Вычислить объем цилиндра
Народ, вот при программы, в них ошибки, исправьте пожалуйста, я не понимаю #includ&lt;stdio.h&gt;...

Вычислите объём цилиндра с радиусом основания 5 см и высотой 10 см
В общем даны задачи: 1. По данным сторонам прямоугольника вычислите его периметр и площадь...

Вычислить объем цилиндра по известному радиусу основания и высоте
Написать программу, вычисляющую объем цилиндра по известному радиусу основания и высоте. Расчет...


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

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

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