Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

PoleTrójkąta --- Problem !

Ostatnio zmodyfikowano 2009-11-16 16:37
Autor Wiadomość
klarinet
Temat założony przez niniejszego użytkownika
PoleTrójkąta --- Problem !
» 2009-11-15 22:11:06
Witam ,
Piszę program do obliczania pol i obwodu trojkata ... i wyskakują mi jeszcze 3 errory ... i nie wiem dlaczego  ?? co jest źle ??
C/C++
#include <cstdlib>
#include <iostream>
#include <math.h>
#include <string.h>



using namespace std;


class Trojkat
{
public:
    int a, b, c;
    int h;
    Trojkat();
    float licz_pole( int a, int h );
    int licz_obwod( int a, int b, int c );
    ~Trojkat();
   
}


Trojkat::licz_pole( int a, int h )
{
    //this->a=a;
    //this->h=h;
    return( 1 / 2 * a * h );
}

Trojkat::licz_obwod( int a, int b, int c )
{
    //this->a=a;
    //this->b=b;
    //this->c=c;
   
    return( a + b + c );
}

int main()
{
    Trojkat t;
    t.a = 10;
    t.b = 20;
    t.c = 20;
    t.licz_obwod( t.a, t.b, t.c );
    system( "Pause" );
    // delete t;
   
    return 0;
   
}

//pixelmaster: po co 2 identyczne tematy ? wklej treść błędów
P-11600
malan
» 2009-11-15 22:41:03
Trojkat::licz_pole( int a,int h)
Jesteś pewny, że to jak powinno być?

Poza tym spróbuj napisać tak ten program żeby nie przesyłać argumentów do funkcji, tylko pracować na obiektach klasy.
P-11601
DejaVu
» 2009-11-15 22:47:51
C/C++
#include <cstdlib>
#include <iostream>
#include <math.h>
#include <string.h>



using namespace std;


class Trojkat
{
public:
    int a, b, c;
    int h;
    //Trojkat();
    float licz_pole( int a, int h );
    int licz_obwod( int a, int b, int c );
    //~Trojkat();
   
};


float Trojkat::licz_pole( int a, int h )
{
    //this->a=a;
    //this->h=h;
    return( 1 / 2 * a * h );
}

int Trojkat::licz_obwod( int a, int b, int c )
{
    //this->a=a;
    //this->b=b;
    //this->c=c;
   
    return( a + b + c );
}

int main()
{
    Trojkat t;
    t.a = 10;
    t.b = 20;
    t.c = 20;
    t.licz_obwod( t.a, t.b, t.c );
    system( "Pause" );
    // delete t;
   
    return 0;
   
}
P-11603
klarinet
Temat założony przez niniejszego użytkownika
» 2009-11-16 08:32:20
hmmmm .... i dalej to nie działa ....;/
Wyskakują mi ciągle te same errory ?

Error 1 error C2628: 'Trojkat' followed by 'int' is illegal (did you forget a ';'?)

Error 2 error C2556: 'Trojkat Trojkat::licz_pole(int,int)' : overloaded function differs only by return type from 'int Trojkat::licz_pole(int,int)

Error 3 error C2371: 'Trojkat::licz_pole' : redefinition; different basic types

P-11605
malan
» 2009-11-16 16:37:45
Zadeklarowałeś złe typy funkcji i zmiennych ;p.

Spróbuj tego:
C/C++
#include <iostream>
using namespace std;

class cTrojkaty
{
public:
    double bokA, bokB, bokC, wysokosc;
   
    inline double fObliczObwod( void )
    {
        return bokA + bokB + bokC;
    };
    inline double fObliczPole( void )
    {
        return( bokA * wysokosc ) / 2;
    }
};

int main()
{
    cTrojkaty cTrojkat;
   
    cout << "Podaj 1 bok -> ";
    cin >> cTrojkat.bokA;
   
    cout << "Podaj 2 bok -> ";
    cin >> cTrojkat.bokB;
   
    cout << "Podaj 3 bok -> ";
    cin >> cTrojkat.bokC;
   
    cout << "Podaj wysokosc -> ";
    cin >> cTrojkat.wysokosc;
   
    cout << "Pole = " << cTrojkat.fObliczPole() << endl;
    cout << "Obwod = " << cTrojkat.fObliczObwod();
    return 0;
}
P-11607
« 1 »
  Strona 1 z 1