Visualizzazione dei risultati da 1 a 1 su 1
  1. #1
    Junior
    Registrato dal
    Mar 2012
    Messaggi
    18

    Predefinito programma c++ spezzate

    sto provando a fare un programma che legge una spezzata di 6 punti e verifica che 2 dei segmenti della spezzata siano // all'asse x e due // all'asse y

    io l'ho svolto così,ma non sembra venire:

    #include <iostream>
    #include <math.h>

    using namespace std;

    const int N=6;
    void leggiSpezzata(int spezzata[N][2]);
    void stampaSpezzata(int spezzata[N][2]);
    bool puntiUguali (int x, int y);
    int paralleli ( int x, int y, int x1, int x2);
    bool paralleli2 ( int spezzata[N][2]);


    void leggiSpezzata (int spezzata[N][2]) {

    int i,j;

    for(i=0;i<N;i++) {
    cout<<"inserisci le coordinate x ed y della spezzata numero "<<i+1<<": "<<endl;
    for(j=0;j<2;j++) {
    cin>>spezzata[i][j];
    }
    cout<<endl;
    }
    return;
    }

    void stampaSpezzata (int spezzata[N][2]) {

    int i,j;

    cout<<" la spezzata risulta essere " <<endl;
    for (i=0;i<N;i++) {
    for(j=0;j<2;j++) {
    cout<<" "<<spezzata[i][j];
    }
    cout<<endl;
    }
    return;
    }

    int paralleli ( int x, int y, int x1, int y1) {

    if( y==y1 ) {
    return 4;
    }
    if ( x==x1) {
    return 5;
    }
    }

    bool paralleli2 ( int spezzata[N][2]) {

    int i,j;
    int contatore1=0;
    int contatore2=0;

    for(i=0;i<N-1;i++) {
    if( paralleli(spezzata[i][0],spezzata[i][1],spezzata[i+1][0],spezzata[i+1][1]) ==4 ) {
    contatore1++;
    }
    if( paralleli(spezzata[i][0],spezzata[i][1],spezzata[i+1][0],spezzata[i+1][1]) ==5 ) {
    contatore2++;
    }

    }
    if( contatore1== 2 && contatore2== 2) {
    return true;
    } else {
    return false;
    }
    }


    int main () {

    int s[N][2];

    leggiSpezzata(s);
    cout<<endl;
    stampaSpezzata(s);

    if (paralleli2(s)) {
    cout<< " la spezzata contiene due segmenti // all'asse x e due // all'asse y " <<endl;
    } else {
    cout<<" la spezzata non contiene due segmenti // all'asse x e due // all'asse y " <<endl;
    }

    system("pause");
    }
    Ultima modifica di marti4ef; 01-07-12 a 12:41

Segnalibri

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •