ABA


"צריך עזרה בכמה שאלות בפסקל - מחרוזות."
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #6048 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 6048
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק
   19:06   25.05.03   
אל הפורום  
  צריך עזרה בכמה שאלות בפסקל - מחרוזות.  
 
   המכתב עבר עריכה לאחרונה בתאריך 01.06.03 בשעה 13:20 על-ידי מנהל
 
קיבלנו דף עבודה להגשה :(
צריך עזרה, הסבר, דרך לפיתרון, פיתרון, משהו לתרגילים הבאים:

1.
כתוב תוכנית הקולטת מחרוזת באורך מקסימלי של 100 תווים. אם אורך המחרוזת אי זוגי: יוחלפו התא הראשון והאחרון ביניהם. אם אורך המחרוזת זוגי יוחלפו ביניהם שני התווים האמצעיים במחרוזת. הדפס את המחרוזת לאחר ההחלפה.

דוגמא: אם המחרוזת המקורית היא abcd תהיה המחרוזת החדשה acbd
אם המחרוזת המקורית היא abcde תהיה המחרוזת החדשה ebcda

2.א. כתוב פרוצדורה out_f המקבלת מחרוזת גדולה st ותת-מחרוזת tat, ומחזירה את המחרוזת st לאחר שהוצאו ממנה כל המופעים של tat.
ב. כתוב תוכנית הקולטת תת מחרוזת tat_mach וסדרה של מחרוזות. התוכנית תוציא מכל מחרוזת בסדרה: את הרווחים, את המופעים של tat_mach. השתמש בפרוצדורה out_of שכתבת בסעיף א'. הסדרה תסתיים כאשר המחרוזת שתחזור לאחר הוצאת הרווחים והמופעים של tat_mach תהיה מחרוזת ריקה.

3. כתוב תוכנית הקולטת מחרוזת באורך של עד 100 תווים. התוכנית בודקת ומדפיסה את מספר הפעמים שבמחרוזת מופיעה שלשה של תווים כך שהתו הראשון והאחרון זהים והתו האמצעי שונה.

דוגמא: עבור הקלט: XRBRAAABASMSMSPQ
יהיה הפלט 5 שלשות של תווים RBR,ABA,SMS,MSM,SMS

4.כתוב שיגרה המקבלת מחרוזת. ידוע שבמחרוזת יש רק אותיות קטנות באנגלית וספרות 0-9. אין צורך לבדיקת תקינות.
על השגרה:
א. לחשב ולהדפיס את מספר הספרות שבמחרוזת.
ב. לחשב ולהדפיס את סכום הספרות שבמחרוזת.
ג. לבדוק ולהדפיס את האותיות שהופיעו בדיוק שלוש פעמים.

דוגמא עבור המחרוזת: km1a02kagsdk4g56admm0bgm6
יהיה הפלט
מספר הספרות: 8
סכום הספרות: 24
האותיות שהופיעו 3 פעמים k a g

5.


program wrong;
type
i:string{30};
var
line:l;
x:integer;
begin
readln(line);
x:=1;
while x<=length(line) do
if line{x}=line{x+1} then
x:=x+1;
if x=length(line) then
writeln('כל התווים שווים') else
writeln('לא כל התווים שווים');
end.

התוכנית הנ"ל אמורה לקלוט מחרוזת באורך של עד 30 תווים, לבדוק ולהדפיס האם כל התווים במחרוזת שווים או לא. התכנית שגויה. הסבר את השגיאות ותקן את התוכנית כדי שתבצע את הנדרש. אין לכתוב תוכנית אחרת אלא תקן את התוכנית הקיימת.

לעוזרים


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  תשובה 3: TheTom 25.05.03 20:16 1
     תראה טוב טוב מה רשמת... Ogostus 25.05.03 20:49 2
         ? דני15  25.05.03 20:59 4
         ככה Ogostus 25.05.03 22:06 5
             אז איך כן ? דני15  25.05.03 22:36 6
                 ככה נראה לי reshef 25.05.03 22:51 8
                     זה נכון? reshef 25.05.03 23:02 10
     תודה רבה:) ואני באמת צריך כי זה להגשה דני15  25.05.03 20:59 3
  תשובה מספר 1 jossepe_4u  25.05.03 22:51 7
     תודה רבה רבה לך :) אגב אתה דני15  25.05.03 22:57 9
     תשובה מספר 3 jossepe_4u  25.05.03 23:02 11
         לא הבנתי בשביל מה ה-y... דני15  26.05.03 15:39 13
             מונה ... תסתכל בשאלה jossepe_4u  26.05.03 15:42 14
                 יכול להיות שלא הבנתי את השאלה.. וותר על השורה jossepe_4u  26.05.03 15:43 15
                     גם אני לא ממש הבנתי ת'שאלה :( דני15  26.05.03 17:18 16
  תודה רבה רבה :))) דני15  26.05.03 15:21 12
  אפשר את השאר ? דני15  27.05.03 20:10 17
  בגלל שהפורום לא איפשר לי לא יכולתי להעלות את Fire_Bullet 28.05.03 00:15 18
  בקשר לשאלה 5 דני15  31.05.03 14:37 19
     תיקנתי לך את ההודעה הראשונה jossepe_4u  01.06.03 13:21 20
  פתרון ל5 jossepe_4u  01.06.03 13:29 21
     תודה רבה!!:)) דני15  01.06.03 13:33 22
         בשביל זה אנחנו פה ... jossepe_4u  01.06.03 13:34 23
             חח אחלה :) דני15  01.06.03 14:00 24

       
TheTom

   20:16   25.05.03   
אל הפורום  
  1. תשובה 3:  
בתגובה להודעה מספר 0
 
   str(100)
counter:= 0;
for i:= 1 to 100 do
if (i=i+2) and (i<>i+1) then
counter:= counter+1

יש לי גם פתרונות לרוב פה..אבל אין לי כח לרשום..רק אם אתה באמת צריך


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

   20:49   25.05.03   
אל הפורום  
  2. תראה טוב טוב מה רשמת...  
בתגובה להודעה מספר 1
 
   ותוודא שאתה יודע מה רשמת... כי מה שרשמת זה פשוט שטויות...
איך
i=i+2
?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק
   20:59   25.05.03   
אל הפורום  
  4. ?  
בתגובה להודעה מספר 2
 
  


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

   22:06   25.05.03   
אל הפורום  
  5. ככה  
בתגובה להודעה מספר 2
 
   הוא רשם
if (i=i+2) and...
אז זהו שבחיים זה לא יכול לקרות!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק
   22:36   25.05.03   
אל הפורום  
  6. אז איך כן ?  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
reshef
חבר מתאריך 1.7.02
344 הודעות, דרג אמינות חבר זה
   22:51   25.05.03   
אל הפורום  
  8. ככה נראה לי  
בתגובה להודעה מספר 6
 
   const N=100 ;
var S : String ;
I, Sum : integer ;
begin
Sum := 0;
readln (S) ;
for I:=1 to (N-2) do
if ((S = S) and (S <> S)) then Sum := Sum + 1 ;
writeln (sum);
end;


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
reshef
חבר מתאריך 1.7.02
344 הודעות, דרג אמינות חבר זה
   23:02   25.05.03   
אל הפורום  
  10. זה נכון?  
בתגובה להודעה מספר 8
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   20:59   25.05.03   
אל הפורום  
  3. תודה רבה:) ואני באמת צריך כי זה להגשה  
בתגובה להודעה מספר 1
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   22:51   25.05.03   
אל הפורום  
  7. תשובה מספר 1  
בתגובה להודעה מספר 0
 
   עבר עריכה לאחרונה בתאריך 25.05.03 בשעה 22:54
 

Program String_ex (input,output);
uses
WinCrt;
Var
Str:string{100} ;
Temp:Char;
x:integer;
Begin
Writeln ('Enter String');
Readln (Str);
x:= Length(Str);
IF (x mod 2 = 0)Then
Begin
x:=x div 2;
Temp:= Str{x};
Str{x} := Str{x+1};
Str{x+1} := Temp;
end
Else
Begin
Temp:= Str{1};
Str{1}:= Str{x};
Str{x}:= Temp;
end;
Writeln (Str);
End.
כתבתי סוגרים מסולסלים בגלל שהוא לא מקבל סוגרים מרובעים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   22:57   25.05.03   
אל הפורום  
  9. תודה רבה רבה לך :) אגב אתה  
בתגובה להודעה מספר 7
 
   לא חייב לכתוב לי ת'תוכנית כולה, אלא את האלגוריתם או הדרך. ככה לך יהיה יותר קל ותוכל לענות לי על יותר שאלות


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   23:02   25.05.03   
אל הפורום  
  11. תשובה מספר 3  
בתגובה להודעה מספר 7
 
  

Program String_ex (input,output);
uses
WinCrt;
Var
Str:string{100};
x,y:integer;
Begin
y:=0;
Writeln ('Enter String');
Readln (Str);
For x:= 1 to length(Str) do
IF (Str{x} = Str{x+2}) And (Str{x} <> Str{x+1}) Then
begin
Writeln (Str{x},Str{x+1},Str{x+2});
inc(y);
end;
Writeln (y);
End.

שוב החלפתי את הסוגרים המרובעים במסולסלים
מטמעי קריאה בפורום


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   15:39   26.05.03   
אל הפורום  
  13. לא הבנתי בשביל מה ה-y...  
בתגובה להודעה מספר 11
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   15:42   26.05.03   
אל הפורום  
  14. מונה ... תסתכל בשאלה  
בתגובה להודעה מספר 13
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   15:43   26.05.03   
אל הפורום  
  15. יכול להיות שלא הבנתי את השאלה.. וותר על השורה  
בתגובה להודעה מספר 14
 
   של המונה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   17:18   26.05.03   
אל הפורום  
  16. גם אני לא ממש הבנתי ת'שאלה :(  
בתגובה להודעה מספר 15
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   15:21   26.05.03   
אל הפורום  
  12. תודה רבה רבה :)))  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   20:10   27.05.03   
אל הפורום  
  17. אפשר את השאר ?  
בתגובה להודעה מספר 0
 
  


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

דרג אמינות חבר זה
   00:15   28.05.03   
אל הפורום  
  18. בגלל שהפורום לא איפשר לי לא יכולתי להעלות את  
בתגובה להודעה מספר 0
 
   התשובות קודם לכן.
עכשיו אני ממש ממהר וחייב ללכת לישון אז אולי מחר אני
אפרסם חלק מהתשובות.

חבל שהפורום מוריד מהאיכות שלו עצמו!!!
אם הוא לא היה עושה לי את המגבלה הייתי מפרסם את התשובות
לפני שעות...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   14:37   31.05.03   
אל הפורום  
  19. בקשר לשאלה 5  
בתגובה להודעה מספר 0
 
   אני נורא מצטער אבל שכחתי שהפורום לא מקבל סוגריים מרובעים לכן חסרים בתוכנית כמה דברים. הנה התוכנית עם סוגריים מסולסלים:

 
program wrong;
type
i:string{30};
var
line:l;
x:integer;
begin
readln(line);
x:=1;
while x<=length(line) do
if line{x}=line{x+1} then
x:=x+1;
if x=length(line) then
writeln('כל התווים שווים') else
writeln('לא כל התווים שווים');
end.

תודה לעוזרים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   13:21   01.06.03   
אל הפורום  
  20. תיקנתי לך את ההודעה הראשונה  
בתגובה להודעה מספר 19
 
   ערכתי את התוכנית בשאלה 5


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   13:29   01.06.03   
אל הפורום  
  21. פתרון ל5  
בתגובה להודעה מספר 0
 
   עבר עריכה לאחרונה בתאריך 01.06.03 בשעה 15:26
 


Program Wrong (input,output);
(* Program: Fix The program
Programer: JossePe Av1aD
Date: 01-06-03 *)
Uses WinCrt;
Type
l = String{30};
Var
line:l;
x:Integer;
Begin
Writeln ('enter Srting');
Readln(line);
x:=1;
While (x < length(line)) Do
If (line{x} = line{x+1}) Then
inc(x)
Else
begin
writeln ('wrong string');
x:= 32;
end;
If (x = length(line)) Then
writeln ('correct string');
End.

את הסוגריים המסולסלים תחליף במרובעים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   13:33   01.06.03   
אל הפורום  
  22. תודה רבה!!:))  
בתגובה להודעה מספר 21
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
jossepe_4u 
חבר מתאריך 18.3.02
258 הודעות, דרג אמינות חבר זה
   13:34   01.06.03   
אל הפורום  
  23. בשביל זה אנחנו פה ...  
בתגובה להודעה מספר 22
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק, -3 נקודות
   14:00   01.06.03   
אל הפורום  
  24. חח אחלה :)  
בתגובה להודעה מספר 23
 
  


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

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

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



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