Jump to content
Admin2

Class Dalam C++

Recommended Posts

#include<iostream>

#include<string>

using namespace std;

class Marks

{

private:

char name[100], grade;

float gpa;

public:

char *set_name()

{

cout<<"Enter name : ";

cin.getline(name,99);

return name;

}

float set_gpa()

{

cout<<"Enter CGPA : ";

cin>>gpa;

return gpa;

}

char set_grade()

{

if(gpa>=3.00 && gpa<=4.00)

grade = 'A';

else

if(gpa>=2.00 && gpa<=2.99)

grade = 'B';

else

if(gpa>=0.00 && gpa<=1.99)

grade = 'F';

}

};

void main()

{

Marks student;

student.set_name();

student.set_gpa();

student.set_grade();

cout<<"Name : "<<name<<endl; //error C2065: 'name' : undeclared identifier

cout<<"GPA : "<<gpa<<endl; //error C2065: 'gpa': undeclared identifier

cout<<"Grade : "<<grade<<endl; //error C2065: 'grade': undeclared identifier

}

ada 3 errors (error ada tulis dekat comment bahagian code). macam mana kita nak print output dia tu?

Share this post


Link to post
Share on other sites

name, gpa dan grade berada dalam skop kelas Marks.. awak takleh akses dari luar just by their names.. lebih2 lagi private nonstatic members. besanya awak nyer class patut ader setter n getter function. dalam contoh di atas awak dah ader setters (set_XXX). getter function digunakan untuk akses private members, e.g (sebahagian dari class Marks) :

float get_gpa() {return gpa;}

dan sebagainya.. dan untuk lebih lengkap lagi, bolehlah juga buat function print_XXX (or aper2 laa), untuk print nilai private members ni.

Share this post


Link to post
Share on other sites

name, gpa dan grade berada dalam skop kelas Marks.. awak takleh akses dari luar just by their names.. lebih2 lagi private nonstatic members. besanya awak nyer class patut ader setter n getter function. dalam contoh di atas awak dah ader setters (set_XXX). getter function digunakan untuk akses private members, e.g (sebahagian dari class Marks) :

float get_gpa() {return gpa;}

dan sebagainya.. dan untuk lebih lengkap lagi, bolehlah juga buat function print_XXX (or aper2 laa), untuk print nilai private members ni.

using namespace std; //bukan utk c je ke???patutnya c++ xleh guna kan?? boleh x taipkan sintak yang betul.....aku x dpt trace error la

Share this post


Link to post
Share on other sites

nah ni aku ada betulkan.tp x la sebagus mana programming skills aku nih.

#include<iostream>
#include <string.h>
using namespace std;

class Marks
{
private:
    char name[100];
    char grade;
    float gpa;

public:
    void set_name();
    void set_gpa();
    void set_grade();    
    void display();
};

void Marks::set_name()
{
    cout<<"Enter name : ";
    cin.getline(name,99);
}

void Marks::set_gpa()
{
    cout<<"Enter CGPA : ";
    cin>>gpa;        
}

void Marks::set_grade()
{    
    if (gpa>=3.00 && gpa<=4.00)
        grade = 'A';
    if (gpa>=2.00 && gpa<=2.99)
        grade = 'B';
    if (gpa>=0.00 && gpa<=1.99)
        grade = 'F';    
}

void Marks::display()
{
    cout<<"Nama : "<<name<<endl; 
    cout<<"CGPA : "<<gpa<<endl; 
    cout<<"Grade : "<<grade<<endl; 
}

void main()
{
    Marks student;

    student.set_name();
    student.set_gpa();
    student.set_grade();
    student.display();
}

Share this post


Link to post
Share on other sites

elo hehe thanx sbb bg code ni. tapi memng return dia tak keluar. aku dah dapat jawapan dia dah. mm kalau nak tgk jawapan dia camni (from my lecturer):

#include<iostream.h>
#include<string.h>

class Marks
{
    private:
        char name[30], grade;
        float gpa;
    public:    
        char *set_name()
        {
            cout<<"Enter name  : ";
            cin.getline(name, 30);

            return name;
        }
        
        float set_gpa()
        {
            cout<<"Enter CGPA  : ";
            cin>>gpa;

            return gpa;
        }

        char set_grade()
        {
            if ((gpa >= 3.00)&&(gpa <= 4.00))
                grade = 'A';
            else
                if ((gpa >= 2.00)&&(gpa < 3.00))
                    grade = 'B';
                else
                    grade = 'F';
            return grade;
        }
};

void main()
{
    char name[30], grade;
    float gpa;

    Marks M;

    cout<<"==================================="<<endl;
    cout<<"         ENTER INFORMATION         "<<endl;
    cout<<"==================================="<<endl;
    
strcpy(name, M.set_name());
    gpa = M.set_gpa();
    grade = M.set_grade();

    cout<<"==================================="<<endl;
    cout<<"            RESULT SLIP            "<<endl;
    cout<<"==================================="<<endl;
    cout<<"Name      : "<<name<<endl;
    cout<<"GPA       : "<<gpa<<endl;
    cout<<"Grade     : "<<grade<<endl;
}

thanx ok. nanti ada soalan apa2 nanti aku try la tanya lagi k:D

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...