Oppure

Loading
23/10/09 10:34
matteog
ho uno schema che rappresenta il funzionamento dell'ascensore per una palazzina di tre piano avete qualche suggerimento per eseguirlo correttamente e senza dover fare tutti i casi?
aaa
23/10/09 10:40
lorenzo
che vuol dire?
aaa
23/10/09 12:17
theprogrammer
Dico ... hai uno "schema" che non sappiamo esattamente cosa sia, non ce lo mostri ... cosa dovremmo dirti?
aaa
25/10/09 9:01
NickoMaiden
const int pianitot=3;
    int pianoattuale=0;
    
    while(1)
       {
        cout<<"scegli un piano\n";
        for(int i=0;i<pianitot;i++)   
           {
            if(i!=pianoattuale)
               cout<<i<<endl;      
            }
            
         cin>>pianoattuale;          
        
        }



era questo ciò che intendevi??
aaa
25/10/09 13:20
matteog
vi chiedo scusa mi sono spiegato veramente male allora questo è il codice che ho prodotto fino ad adesso:


#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#include <iostream>
using namespace std;
int h0=0,h1=4,h2=8;
int main()
{
	//s=insieme degli stati
	//i=insieme finito possibili ingressi
    //u0insieme finito possibili uscite
	
	bool p0=true,p1=false,p2=false;

	int can=0;
	int k=0;
	double i;
	while(k!=5)
	{
	do
	{//chiamata dell'ascensore da piano a 4 o a 8
	 
      cout<<"premere 0 per chiamare ascensore al piano terra"<<endl;
	  cout<<"premere 1 per primo piano"<<endl;
	  cout<<"premere 2 per secondo piano"<<endl;
      cin>>k;
      system("cls");  	
		can=1;
	    system("cls");
	  
	}
	while(can!=1);
	if(k==0)
	{
		//dove è l'ascensore?
		if(p0==true)
		{
         cout<<"porte aperte"<<endl<<"ascensore fermo siamo già a quel piano"<<endl;

		}
		else if(p1==true)
		{
			for(i=4;i>0;i=i-0.1)
			{
				cout<<i<<"M"<<endl;
			}
			cout<<"arrivati!!"<<endl;
			p1=false;
			p0=true;
		}
		else if(p2==true)
		{
			for(i=8;i>0;i=i-0.1)
			{
				cout<<i<<"M"<<endl;
			}
			cout<<"arrivati!!"<<endl;
			p2=false;
			p0=true;
		}

	}
	else if(k==1)
	{
		if(p0==true)
		{
          for(i=0;i<4;i=i+0.1)
		  {
			  cout<<i<<"M"<<endl;
		  }
		  cout<<"arrivati"<<endl;
		  p1=true;
          p0=false;

		}
		else if(p1==true)
		{
			cout<<"ascensore fermo"<<endl<<"siamo già a quel piano"<<endl;
		}
		else if(p2==true)
		{
			for(i=8;i>4;i=i-0.1)
			{
				cout<<i<<"M"<<endl;
			}
			cout<<"arrivati!!"<<endl;
			p2=false;
			p1=true;
		}
	}
	else if(k==2)
	{
		if(p0==true)
		{
          for(i=0;i<8;i=i+0.1)
		  {
			  cout<<i<<"M"<<endl;
		  }
          cout<<"arrivati"<<endl;
		  p2=true;
          p0=false;

		}
		else if(p1==true)
		{
		  for(i=0;i<8;i=i+0.1)
		  {
			  cout<<i<<"M"<<endl;
		  }
          cout<<"arrivati!!"<<endl;  
		  p2=true;
          p1=false;
		}
		else if(p2==true)
		{
			cout<<"ascensore fermo"<<endl<<"siamo già a quel piano"<<endl;
		}
	}
	}

system("pause");
return 0;
}



il mio problema è quasto:
non sò come impostare il codice che dovrebbe rappresentare il funzionamento dei tasti all'interno dell'ascensore e che dovrebbero farlo smuovere senza dover ripetere una serie di if lunghissima avete qualche idea?
aaa