לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 24-05-2007, 14:51
צלמית המשתמש של fcf
  משתמש זכר fcf fcf אינו מחובר  
 
חבר מתאריך: 17.09.05
הודעות: 6,023
שלח הודעה דרך ICQ אל fcf שלח הודעה דרך MSN אל fcf Facebook profile
בעייה בקריאה עד feof

שלום

בניתי תוכנית שנתנו לי ויש לי בעייה איתה,זאת המשימה :

שאלה מס' 5 (20 נק')

כתוב תוכנית המקבלת כארגומנט בשורת הפקודה שם קובץ טקסט.

קובץ הטקסט מכיל מידע על מוצרים בחברה סלולרית. לכל מוצר יש מספר קטלוגי (מסוג long) ומחרוזת המכילה סדרת תוצאות ניסויי בקרת איכות שנערכו במוצר. ציון כל ניסוי הוא אות קטנה מהא"ב האנגלי (a-z). אורכה של המחרוזת אינו ידוע והיא מסתיימת בתו '\n'.נתון כי במחרוזת לא תופיע אף אות יותר מ 15 פעמים.

מספר המוצרים בקובץ אינו ידוע מראש.

על התוכנית לקרוא את הקובץ וליצור ממנו קובץ טקסט חדש בשם newFile.txt שיכיל את האינפורמציה הבאה עבור כל מוצר:

מספרו הקטלוגי של המוצר ומחרוזת דחוסה לפי אלגוריתם הדחיסה המתואר בהמשך ומסתיימת ב '\n' .

אלגוריתם הדחיסה: המחרוזת הדחוסה תכיל לסירוגין אות ומספר מופעיה ברציפות.

לדוגמא המחרוזת aabbacccccb תיכתב בצורה הדחוסה: a2b2a1c5b1.



לדוגמא:

תוכן קובץ הטקסט שהתקבל כקלט:

43523 aabcccddxxa

2536 abbbccee

12545 aabbfffzz

36458 wwwccaaa

4587 cfffddxxxx

תוכן קובץ הטקסט newFile.txt
43523 a2b1c3d2x2a1

2536 a1b3c2e2

12545 a2b2f3z2

36458 w3c2a3

4587 c1f3d2x4


זאת התוכנית שלי , ויש לי איתה בעייה, בדיבאגר היא עובדת פרפקט, עברתי עליה 100 פעם ולא מצאתי שום בעייה ! מה שקורה זה שהתוכנית כאילו ולא מסתיימת ושום דבר לא מודפס לקובץ newFile.txt

התוכנית :
קוד PHP:
 int main(int argv,char *argu[])
{
    
FILE *fp1=fopen(argu[1],"rt");
    
FILE *fp2=fopen("c:\\newFile.txt","wt");
    
int Letters[26]={0},i,ID=0,j;
    
char ch=0;

    if(
fp1==NULL || fp2==NULL)
    {
        
printf("File open or creating Error!");
        return 
0;
    }
    
    for(
i=0;!feof(fp1);i++,ID=0)
    {
        for(
j=0;j<26;j++)
        {
            
Letters[j]=0;
        }
        
ch=fgetc(fp1);
        while(
ch!=' ')
        {
            
ID=ID*10;
            
ID=ID+ch-'0';
            
ch=fgetc(fp1);
        }
        
ch=fgetc(fp1);
        for(
j=0;ch!='\n';j++)
        {
            
Letters[ch-'a']++;
            
ch=fgetc(fp1);
        }
        
fprintf(fp2,"%d ",ID);
        for(
j=0;j<26;j++)
        {
            if(
Letters[j]!=0)
            {
                
fprintf(fp2,"%c%d",j+'a',Letters[j]);
            }
        }
        
fprintf(fp2,"\n");
    }
    
fclose(fp1);
    
fclose(fp2);
    return 
1;



תודה רבה, תשובות במהרה בבקשה, יש לי מבחן על החומר הזה מחר וזאת בעייה דיי מוזרה
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה


נערך לאחרונה ע"י fcf בתאריך 24-05-2007 בשעה 14:54.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 16:02

הדף נוצר ב 0.05 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר