Solved

Program won't run.

Posted on 1998-12-13
10
169 Views
Last Modified: 2010-04-02
The program is not difficult, but when I use pointers it won't run.The program is as follows:
/* This program asks for the circumference and calculates the circle's radius and its area*/
/* This program asks for the circumference and calculates the circle's radius
and its area*/
#include<iostream.h>
#include<math.h>
#define PI 3.14159
void main(void)
{
double circum,area,radio;
void radius(double,double *);
void areas(double,double *);
cout<<"Entre la circumferencia del circulo, para computar su area\n";
cin>>circum;
radio=radius(circum,&radio);
area=areas(radio,&area);
cout<<"El area de el circulo es "<<area;
}
void radius(double cicum,double *radio)
{
 *radio=circum/(2.000000*PI);
 }
 void areas(double radio,double*area)
 {
 double area;
 *area=PI*pow(radio,2.000000);
 }
0
Comment
Question by:jorhez
10 Comments
 
LVL 22

Expert Comment

by:nietod
ID: 1180087
NOTE TO EXPERTS  THIS IS A DUPLICATE QUESTION  Unless Jorhes indicates otherwise, please answer on other question  

jorhez, delete this question and you will be refunded the points.  Once someone answers the question cannot be deleted.
0
 

Author Comment

by:jorhez
ID: 1180088
Edited text of question
0
 

Author Comment

by:jorhez
ID: 1180089
I had sent a similar message, but I forgot to include some changes I had done on the program. I want to use pointers on this one in order to understand them, although I know their not essntial.


0
Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 

Author Comment

by:jorhez
ID: 1180090
I had sent a similar message, but I forgot to include some changes I had done on the program. I want to use pointers on this one in order to understand them, although I know their not essential.


0
 

Author Comment

by:jorhez
ID: 1180091
I had sent a similar message, but I forgot to include some changes I had done on the program. I want to use pointers on this one in order to understand them, although I know their not essential for the program to run correctly.


0
 
LVL 4

Expert Comment

by:pagladasu
ID: 1180092
First of all your functions are declared as returning void - it will be an error truing to capture the return value. All you need is to change these two lines:
radio=radius(circum,&radio);
area=areas(radio,&area);
Change them to:
radius(circum,&radio);
area=areas(radio,&area);

Thanks
pagladasu
0
 
LVL 8

Expert Comment

by:Answers2000
ID: 1180093
Pagladasu - See
http://www.experts-exchange.com/topics/comp/lang/cplusplus/Q.10108117

He's already accepted my answer
0
 
LVL 1

Accepted Solution

by:
billyh earned 50 total points
ID: 1180094
Here is you answer.

#include<iostream.h>
#include<math.h>
#define PI 3.14159

// Declare these variables as globals. These is a bad programming style.
double circum,area,radio;

void main(void)
{
      void radius(double,double *);
      void areas(double,double *);
      
      cout<<"Entre la circumferencia del circulo, para computar su area\n";
      cin>>circum;
      radius(circum,&radio);
      areas(radio,&area);
      cout<<"El area de el circulo es "<<area;
}

void radius(double cicum,double *radio)
{
      *(radio) = ::circum / (2.000000*PI);
}

void areas(double radio,double*area)
{
      *(area) = PI * pow(::radio,2.000000);
}

0
 
LVL 1

Expert Comment

by:The_Brain
ID: 1180095
your pointers need the matching &address.

eg.

void radius(double, double *)

void main()
{
  double circ;
  double radio;
 
   Radius(double, &double) ...there I think that's it.

but you could do this
   radius(double, double)

and the proto will be void radius(double, double &);

}
0
 
LVL 4

Expert Comment

by:pagladasu
ID: 1180096
Sorry Answer2000. Did not notice that that you had already answered it and that the answer had been accepted.

0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Errors will happen. It is a fact of life for the programmer. How and when errors are detected have a great impact on quality and cost of a product. It is better to detect errors at compile time, when possible and practical. Errors that make their wa…
Unlike C#, C++ doesn't have native support for sealing classes (so they cannot be sub-classed). At the cost of a virtual base class pointer it is possible to implement a pseudo sealing mechanism The trick is to virtually inherit from a base class…
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.
The viewer will be introduced to the member functions push_back and pop_back of the vector class. The video will teach the difference between the two as well as how to use each one along with its functionality.

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question