I am baffled by my code that sort of writes a graph:
Code:
#include <iostream>
#include <cstdlib>
using namespace std;
void drawgraph (int m, int c);
int main()
{
int c;
int m;
cout<<"Welcome to Michael's Graph Plotter 2006"<<endl;
while (1) {
cout<<endl;
cout<<"Please enter the gradient of your line (-5 to 5 and not 0): ";
cin>>m;
cin.ignore();
if (m >= -5 && m <= 5 && m != 0) {
break;
}
else {
continue;
}
}
while (1) {
cout<<endl;
cout<<"Please enter the y intercept of you line (0 to 9): ";
cin>>c;
cin.ignore();
if (c >= 0 && c <= 9) {
break;
}
else {
continue;
}
}
cout<<endl;
cout<<"Press [ENTER] to see plot your graph...";
cin.get();
system("CLS");
drawgraph(m, c);
cin.get();
return 0;
}
void drawgraph (int m, int c) {
int y = 9;
int x;
int spaces;
while (1) {
spaces = 0;
x = y/m + c;
if (y >= 0 && y <= 9) {
cout<<y;
y--;
while (1) {
if(spaces == x) {
cout<<"x"<<endl;
break;
}
else {
cout<<" ";
spaces++;
continue;
}
}
if (y < 0) {
break;
}
else {
continue;
}
}
}
cout<<" 0123456789"<<endl;
}
I seem to have written in the wrong formula and it works better than with the right formula.
I know it has loads of problems and I know I have used while (1).