21/10/2014, 11:01
|
| | Fecha de Ingreso: octubre-2014
Mensajes: 4
Antigüedad: 10 años, 1 mes Puntos: 0 | |
Problema con cout Hola!! Cuando corro el siguiente codigo, las preguntas que se hacen al usuario se repiten dos veces no entiendo donde está el problema, cualquier ayuda se las agradecria mucho. Cita: #include<GL/glut.h>
#include <iostream>
using namespace std;
void display(){
glClearColor(0.0, 0.5, 0.5, 0.0); //Cor no fondo da janela
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 0.0, 0.0);//Cor atual
float aux;
int m, n, i, j, z, k;
float z1, z2;
{cout << "Digite la coordenada constante de la reta horizontal P"<<endl;
cin>> z1;}
{cout << "Digite la coordenada constante de la reta horizontal Q"<<endl;
cin>> z2;}
const float y1=z1;
const float y2=z2;
float *p;
float *q;
cout << "Digite el número de puntos en la reta horizontal P"<<endl;
cin>> m;
cout << "Digite el número de puntos en la reta horizontal Q"<<endl;
cin>> n;
p=new float [m];
q=new float [n];
cout << "Digite las " << m << " absisas de los puntos en la recta P"<<endl;
for (int i=0; i<m; i++) {
cin>>p[i];}
cout << "Digite las " << n << " absisas de los puntos en la recta Q"<<endl;
for (int i=0; i<n; i++) {
cin>>q[i];}
for (int j=0; j<m; j++) {
for (int i=0; i<m-1-j; i++) {
if (p[i]>p[i+1]) {
aux=p[i];
p[i]=p[i+1];
p[i+1]=aux;
}}}
for (j=0; j<n; j++) {
for (i=0; i<n-1-j; i++) {
if (q[i]>q[i+1]) {
aux=q[i];
q[i]=q[i+1];
q[i+1]=aux;
}}}
for (int k=0; k<n-1; k+=1){
float v[3]={p[0],q[k],q[k+1]};
glBegin(GL_LINE_STRIP);
glVertex2f(p[0], y1);
glVertex2f(v[1], y2);
glVertex2f(v[2], y2);
glEnd();}
for (int k=0; k<m-1; k+=1){
float w[3]={q[3],p[k],p[k+1]};
glBegin(GL_LINE_STRIP);
glVertex2f(q[3], y2);
glVertex2f(w[1], y1);
glVertex2f(w[2], y1);
glEnd();}
glBegin(GL_LINES);
glVertex2f(p[m-1], y1);
glVertex2f(q[n-1], y2);
glEnd();
glFlush();
glutSwapBuffers();
}
int main (int argc, char ** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGBA);
glutInitWindowSize(1000, 1000);
glutInitWindowPosition(0, 0);
glutCreateWindow("Ponto");
gluOrtho2D(-5,5,-5,5);
glutDisplayFunc(display);
glutMainLoop();
return 0;
} |