ABA


"עזרה ב - c++"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #8170 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 8170
HEART

   18:21   28.03.04   
אל הפורום  
  עזרה ב - c++  
 
   ערכתי לאחרונה בתאריך 28.03.04 בשעה 18:32 בברכה, HEART
 
אני אמור ליצור הגרלת לוטו אך כנראה שיש לי בעיה בהקצאות
קומפילציה עוברת אבל יש לי בעיה בהרצה.
תרגיל 2

נושא התרגיל:
 מערכים דינאמים של מצביעים
 מיון מצביעים
 Destractor
 copy constructor


הקדמה:

בתרגיל זה יש לבצע סימולציה של הגרלת הלוטו.
כאשר יופיעו המחלקות הבאות:
1. משבצת – מכילה 30 מספרים (1-30).
2. טופס – מכיל מספר משתנה של משבצות, בהתאם לגורם הממלא את הטופס.
(יכול להיות שטופס שמולא יהיו בו 5 משבצות או 20 משבצות בהתאם לכמה המשתתף רוצה למלא).
ומספר הטופס.
3. הגרלה –
i. בהגרלה ישתתפו כל הטפסים שמולאו.
ii. יוגרלו 5 מספרים בין 1 ל-30 באופן רנדומלי.
iii. לאחר ההגרלה , תחילה יש למיין את המשבצות בכל טופס לפי כמות הנחושים בכל טופס .
iv. לאחר מכן יש למיין את כל הטפסים הסדר יורד מן הניחוש עם המשבצת עם הכי הרבה ניחושים עד לטופס עם המשבצת עם הכי פחות נחושים.

4. להרצת התוכנית-
i. לקבל מהמשתתף כמה טפסים יהיו בהגרלה.
ii. מספר הטופס יהיה באופן רץ – t1, t2 וכן הלאה.
iii. ולאחר מכן יש לקלוט מכל טופס את מספר המשבצות שישתתפו באותו טופס.
iv. יש להכניס בצורה רנדומאלית מספרים אשר ימלאו את המשבצות בכל טופס.
v. להציג את המיון של התוצאות בהתאם למה שהוגדר קודם.
vi. יש להציג את מספר הטופס ואת התוצאות הגבוהות ביותר בכל טופס בסדר יורד.

5. מצורף מספר מחלקות והמשתנים הבסיסים שחובה שיהיו בכל מחלקה, ניתן להוסיף משתנים הגיונים לכל מחלקה כרצונכם.



#include<iostream>
#include<string.h>
#include<time.h>
#include <stdlib.h>
#include <stdio.h>
#include<cassert>
using namespace std;
class Square
{
private:
int number ;
public:

Square()
{
//int tmp;
for (int l=0;l<30;l++)
number=0;
for (int j=0;j<5;j++)
{
number = 1;
}
}
~Square (){}
};
class Blank
{
private:
Square *Psquare;
char *Pnumberblank;
int numberofsquareinthisblank;
public:
Blank()
{
Psquare=NULL;
Pnumberblank=NULL;
numberofsquareinthisblank=-1;
}
Blank (char *Pnum,Square *Ps , int numofs)
{
set_psquare(Ps);
set_pnumber(Pnum);
set_numberofsquareinthisblank(numofs);
}
Blank (Blank &b)
{
Psquare = b.Psquare;
Pnumberblank = b.Pnumberblank;
numberofsquareinthisblank = b.get_numberofsquareinthisblank();
}
void set_pnumber(char *p)
{
Pnumberblank=p;
}
void set_psquare(Square *p)
{
Psquare = p;
}
void set_numberofsquareinthisblank(int numofsq)
{
numberofsquareinthisblank = numofsq;
}
//gets//
Square get_psquare(){return *Psquare;}
char get_pnumberblank(){return *Pnumberblank;}
int get_numberofsquareinthisblank(){return numberofsquareinthisblank;}
~Blank (){delete Psquare; delete Pnumberblank;}
};
class Lottery
{
private:
Blank *Pblank;
int numbersinLottery;
public:
Lottery ()
{
Pblank = NULL;
numbersinLottery =0;
numbersinLottery =0;
numbersinLottery =0;
numbersinLottery =0;
numbersinLottery =0;
}
Lottery(Blank *Pbl)
{
set_num();
Pblank = Pbl;
}
void set_num()
{
for (int m=0;m<5;m++)
{
numbersinLottery = rand()%30+1;
}
}
void printnum()
{
for (int i=0;i<5;i++)
{
cout<<numbersinLottery<<" ";
}
cout<<endl;
}
~Lottery(){delete Pblank;}
};
char *set_pnumberblank(int num)
{
char number, t="t",*tmp ;
_itoa(num , number , 10);
tmp = strcat(number,t);
return tmp;
}

void main(void)
{
Square *ps;Blank *pb;char *pnum;
int nob,nos;
cout<<"how many blanks?";
cin>>nob;
pb = new Blank;
for (int i=0;i<nob;i++)
{
cout<<"how many squares in t"<<(i+1)<<"?";
cin>>nos;
ps= new Square;
for (int j=0;j<nos;j++)
{
ps = Square();
}
pnum = set_pnumberblank(i+1);

pb = Blank (pnum,ps , nos);
}


Lottery l();
//.printnum();


}



                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  לא עברתי על כל הקוד אבל בקלאס לוטורי eranlevi 21.04.04 19:57 1

       
eranlevi
חבר מתאריך 25.4.02
2605 הודעות
   19:57   21.04.04   
אל הפורום  
  1. לא עברתי על כל הקוד אבל בקלאס לוטורי  
בתגובה להודעה מספר 0
 
   לא הבנתי למה בפונקציה set_num אתה מריץ לולאה של 5 על int ? מה זה נותן ?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net