Informatyka w zarządzaniu

Grupa II


#1 2010-03-14 12:18:17

Pysio

Administrator

Zarejestrowany: 2010-03-01
Posty: 10
Punktów :   

Program - obliczanie pola /\

Dobra - oto mój kod do obliczania  pola trójkąta. Szczerze mówiąc radzę użyć tego jako przykładu a nie przepisywać chamsko całość bo się gość kapnie po prostu.

Kod:

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

using namespace std;
int main(int argc, char *argv[])

{ 
      float a; 
      float h;
      float P;
      char k='l';
            
      while(k!='w')
      {
      cout<<"Podaj wartosc a: ";
      cin >> a;
      if (a>0)
         {
      cout<<"Podaj wartosc h, opadajace na bok a: ";
      cin >> h;
          }
      else
          {
          cout<<"Podana wartosc jest mniejsza od zera\n";
          }
      if (h>0)
          {
      P=(a*h)*0.5; 
          }
      else
          {
          cout<<"Podana wartość jest mniejsza od zera\n";
          } 
         cout<< "Pole to: "<< P<<endl ;
         cout<<"Podaj k żeby zakonczyc";
      cin>>k;
      }
         
             system("pause");
}

Offline

 

#2 2010-03-14 22:02:38

Ślepy

Użytkownik

Zarejestrowany: 2010-03-14
Posty: 2
Punktów :   

Re: Program - obliczanie pola /\

Dla mnie trochę popierdoliłeś, bo jak wpisuję ujemna wartość to oprócz komunikatu wyświetla się wartość pola.

Zamiast tego jebnąłem 2x while, łatwiejsze i bardziej przejrzyste. (tylko się nie moge oduczyć pisania /n zamiast endl )

Kod:

#include <iostream.h>

using namespace std;

int main()
{
      cout << "Podaj a" << endl << endl;
      float a;
      cin >> a;
      while (a<=0)
      {
      cout << "Bok nie moze byc mniejszy lub rowny 0!" << endl << endl;
      cout << "Podaj ponownie wartosc a" << endl << endl;
      cin >> a;
      }
      cout << "Podaj h" << endl << endl;
      float h;
      cin >> h;
      while (h<=0)
      {
      cout << "Wysokosc nie moze byc mniejsza lub rowna 0!" << endl << endl;
      cout << "Podaj ponownie wartosc h" << endl << endl;
      cin >> h;
      }
      float p;
      p= a * h * 0.5;
      cout << "Pole trojkata jest rowne " << p << endl << endl;
            }

ZADAŁ COŚ JESZCZE PRÓCZ TEGO ?

Ostatnio edytowany przez Ślepy (2010-03-14 22:11:37)

Offline

 

#3 2010-03-14 23:48:10

Pysio

Administrator

Zarejestrowany: 2010-03-01
Posty: 10
Punktów :   

Re: Program - obliczanie pola /\

Ok, poprawiłem.

Jest tutaj warunek w warunku. Twoja opcja jest łatwiejsza, ale ta też działa.

Kod:

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

using namespace std;
int main(int argc, char *argv[])

{ 
      float a; 
      float h;
      float P;
      char k='l';
            
      while(k!='w')
      {
      cout<<"Podaj wartosc a: ";
      cin >> a;
      if (a>0)
         {
      cout<<"Podaj wartosc h, opadajace na bok a: ";
      cin >> h;
      
       if (h>0)
          {
      P=(a*h)*0.5; 
      cout<< "Pole to: "<< P<<endl ;
          }
      else
          {
          cout<<"Podana wartość jest mniejsza od zera\n";
          } 
          }
      else
          {
          cout<<"Podana wartosc jest mniejsza od zera\n";
          }
     

         cout<<"Podaj k żeby zakonczyc";
      cin>>k;
      }
         
             system("pause");
}

PS zadał jeszcze rozwiązywanie trójmianu kwadratowego - temat wyżej (niżej)

Offline

 

#4 2010-03-15 23:55:16

Damian

Użytkownik

Zarejestrowany: 2010-03-04
Posty: 3
Punktów :   

Re: Program - obliczanie pola /\

ten Twoj program Dawid, z trojkatem, zostawia wiele do zyczenia ja zrobilem go za pomoca "do while", jak widac mozna to zrobic na kilka sposobów, jest w czym wybierac...

Kod:

#include <iostream.h>       //biblioteka wejscia/wyjscia
main ()                     //glowna funkcja progrmu
{
float a,h;                    //zmienne globalne
float pole;

do                          //petla, dopoki a nie bedzie >=0 to petla sie powtarza
{
     cout<<"Podaj podstawe a =  ";
     cin>>a;
     if (a<=0)
     cout<<"Podstawa jest mniejsza lub rowna zero!\nPodaj podstawe wieksza od zera\n";

     }
  
     while(a <= 0);          // tu jest spelniony warunek i wychodzi z petli
     
     do                      //podobnie jak z a
{
     cout<<"Podaj wysokosc h =  ";
     cin>>h;
     if (h<=0)
     cout<<"wysokosc jest mniejsza lub rowna zero!\nPodaj wysokosc wieksza od zera\n";
   
     }
  
     while(h <= 0);           // tu jest spelniony warunek i wychodzi z petli
     pole=a*h*0.5;            //obliczamy pole trojkata
     cout<<"pole tojkata jest rowne = "<<pole<<endl;

system("pause");              //funkcja ktora pozwala zobaczyc wynik
}

Ostatnio edytowany przez Damian (2010-03-15 23:57:22)

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.fraqhunters.pun.pl www.fakastarz.pun.pl www.zarzadzanie09.pun.pl www.komputerdlazielonych.pun.pl www.poradnikrpg.pun.pl