It looks like you're new here. If you want to get involved, click one of these buttons!

- 140.8K All Categories
- 103.6K Programming Languages
- 6.5K Assembler Developer
- 1.9K Basic
- 39.9K C and C++
- 2.9K C#
- 7.9K Delphi and Kylix
- 4 Haskell
- 9.7K Java
- 4.1K Pascal
- 1.3K Perl
- 2K PHP
- 543 Python
- 37 Ruby
- 4.4K VB.NET
- 1.6K VBA
- 20.8K Visual Basic
- 2.6K Game programming
- 315 Console programming
- 90 DirectX Game dev
- 1 Minecraft
- 112 Newbie Game Programmers
- 2 Oculus Rift
- 9K Applications
- 1.8K Computer Graphics
- 739 Computer Hardware
- 3.4K Database & SQL
- 535 Electronics development
- 1.6K Matlab
- 628 Sound & Music
- 257 XML Development
- 3.3K Classifieds
- 199 Co-operative Projects
- 198 For sale
- 190 FreeLance Software City
- 1.9K Jobs Available
- 603 Jobs Wanted
- 208 Wanted
- 2.9K Microsoft .NET
- 1.8K ASP.NET
- 1.1K .NET General
- 3.4K Miscellaneous
- 8 Join the Team
- 354 Comments on this site
- 69 Computer Emulators
- 2.1K General programming
- 187 New programming languages
- 626 Off topic board
- 195 Mobile & Wireless
- 67 Android
- 126 Palm Pilot
- 338 Multimedia
- 154 Demo programming
- 184 MP3 programming
- Bash scripts
- 27 Cloud Computing
- 53 FreeBSD
- 1.7K LINUX programming
- 370 MS-DOS
- Shell scripting
- 321 Windows CE & Pocket PC
- 4.1K Windows programming
- 938 Software Development
- 416 Algorithms
- 68 Object Orientation
- 91 Project Management
- 94 Quality & Testing
- 268 Security
- 7.7K WEB-Development
- 1.8K Active Server Pages
- 61 AJAX
- 4 Bootstrap Themes
- 55 CGI Development
- 28 ColdFusion
- 224 Flash development
- 1.4K HTML & WEB-Design
- 1.4K Internet Development
- 2.2K JavaScript
- 36 JQuery
- 300 WEB Servers
- 150 WEB-Services / SOAP

michelle87
Posts: **1**

in C and C++

I'm having a lot of troubles trying to read the input data into the program. I'm a beginner of C++ and this is my first time to learn to use functions. I wrote out the code but I only got zero. Can someone please help me out?

I have use the following input data:

104

3773

13

121

77

30751

to determine the integers if they are:

1)a multiple of 7, 11 or 13

2)sum of the digits odd or even

3)the square root value(if positive)

4)is it a prime number

and here is my code:

#include

#include

#include

#include

using namespace std;

#define in_file "data.txt"

#define out_file "result.txt"

void multiple();

void sum();

double square(double);

void prime();

int num;

float value;

void main()

{

ifstream ins;

ofstream outs;

ins.open(in_file);

outs.open(out_file);

int num;

ins>>num;

multiple();

sum();

double square();

prime();

ins.close();

outs.close();

getch();

}

void multiple()

{

if (num%7==0 || num%11==0 || num%13==0)

cout<<num<<" is a multiple of 7, 11 or 13."<<endl;

}

void sum()

{

if (num%2==0)

cout<<num<<" is a even number."<<endl;

else

cout<<num<<" is a odd number."<<endl;

}

double square(double value)

{

double num=sqrt(value);

cout<<"The square root value is: "<<value<<endl;

return value;

}

void prime()

{

for (int i=2; i<=num; i++)

{

for (int j=2; j<i; j++)

{

if (i%j==0)

cout<<num<<" is a prime number."<<endl;

else

cout<<num<<" is not a prime number."<<endl;

}

}

}

I have use the following input data:

104

3773

13

121

77

30751

to determine the integers if they are:

1)a multiple of 7, 11 or 13

2)sum of the digits odd or even

3)the square root value(if positive)

4)is it a prime number

and here is my code:

#include

#include

#include

#include

using namespace std;

#define in_file "data.txt"

#define out_file "result.txt"

void multiple();

void sum();

double square(double);

void prime();

int num;

float value;

void main()

{

ifstream ins;

ofstream outs;

ins.open(in_file);

outs.open(out_file);

int num;

ins>>num;

multiple();

sum();

double square();

prime();

ins.close();

outs.close();

getch();

}

void multiple()

{

if (num%7==0 || num%11==0 || num%13==0)

cout<<num<<" is a multiple of 7, 11 or 13."<<endl;

}

void sum()

{

if (num%2==0)

cout<<num<<" is a even number."<<endl;

else

cout<<num<<" is a odd number."<<endl;

}

double square(double value)

{

double num=sqrt(value);

cout<<"The square root value is: "<<value<<endl;

return value;

}

void prime()

{

for (int i=2; i<=num; i++)

{

for (int j=2; j<i; j++)

{

if (i%j==0)

cout<<num<<" is a prime number."<<endl;

else

cout<<num<<" is not a prime number."<<endl;

}

}

}

Terms of use / Privacy statement / Publisher: Lars Hagelin

Programmers Heaven articles / Programmers Heaven files / Programmers Heaven uploaded content / Programmers Heaven C Sharp ebook / Operated by CommunityHeaven

© 1997-2015 Programmersheaven.com - All rights reserved.

## Comments

54The reason you are only getting zero is an issue of scope. You redefine num in your main function which hides the global num and thus the global num isn't the variable that is written to when the data is read in.

Also some other issues:

[code]

//...

multiple();

sum();

double square(); // This line is ignored because it is interpreted as

// a function prototype

prime();

//...

[/code]

Instead you should have something like the following:

[code]

double value = square( num );

[/code]

But judging on the structure of your code you could probably more easily change the square function to be something like the following:

[code]

void square( );

//...

void square( )

{

double value = sqrt( num );

cout<<"The square root value is: "<<value<<endl;

}

[/code]

Your prime function finds all primes less than that of the number you are looking for so that doesn't seem to operate as specified in that the function should determine whether or not the number is a prime or not.

And lastly you should add a loop around your read and function calls:

[code]

ins>>num;

while( !ins.fail() )

{

multiple();

sum();

square();

prime();

ins>>num;

}

[/code]

754754754