ABA


"בעיה בתרגיל בפסקל"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #11594 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 11594
Klein

   20:07   26.12.04   
אל הפורום  
  בעיה בתרגיל בפסקל  
 
   ערכתי לאחרונה בתאריך 26.12.04 בשעה 20:15 בברכה, Klein
 
קיבלתי תרגיל:
כתוב פונקציה המקבלת שני מערכים ומחזירה true אם שניהם זהים ו false אחרת.

עשיתי כך:


const
sof=10;
type
arr1=array of integer;
arr2=array of integer;
function arrays(array1:arr1,array2:arr2):boolean;
var
orech,memuyan,i:integer;
begin (*func*)
orech:=sof;
memuyan:=1;
i:=0;
while (memuyan<=orech) and (i-1<=sof) do
begin (*while*)
if array1=array2 then
memuyan:=memuyan+1;
else
memuyan:=1;
i:=i+1;
end; (*while*)
if memuyan>=orech then
arrays:=true;
else
arrays:=false;
end; (*func*)

זה נכון?
תודה


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  מכתב Crazy Lion  26.12.04 20:08 1
     נעשה Klein 26.12.04 20:15 2
  למדתם לולאות FOR? Dark Megical 26.12.04 20:24 3
     כן, למדנו. הקטע ש Klein 26.12.04 20:36 4
         לא הבנתי את הפיתרון שלך... Dark Megical 26.12.04 20:48 5
             תודה רבה Klein 26.12.04 20:52 6
                 חכה זה מחק את כל הסוגריים המרובעות.... Dark Megical 26.12.04 20:55 7
                     כן תודה אבל שמע רגע Klein 26.12.04 21:02 8
                         לא, בעצם הבנתי Klein 26.12.04 21:09 9
  ממ hbk3 27.12.04 14:24 10
     :| למה אתה שולל? שלך בכלל לא נכון :| Dark Megical 27.12.04 16:54 11
         הנה התיקון- המקלדת הייתה על Insert hbk3 28.12.04 23:51 12
             עכשיו זה טוב :S Dark Megical 29.12.04 10:34 13

       
Crazy Lion  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.7.02
19328 הודעות, 9 פידבק
   20:08   26.12.04   
אל הפורום  
  1. מכתב  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 26.12.04 בשעה 20:09 בברכה, Crazy Lion
 
תרשום ב
code
שיהיה יותר ברור

מילוי סקרים בתשלום למי שמעונין ,
משלם בזמן וקל להגיע ליעד :
https://goo.gl/EJh6V2


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

   20:15   26.12.04   
אל הפורום  
  2. נעשה  
בתגובה להודעה מספר 1
 
  


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

   20:24   26.12.04   
אל הפורום  
  3. למדתם לולאות FOR?  
בתגובה להודעה מספר 0
 
  


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

   20:36   26.12.04   
אל הפורום  
  4. כן, למדנו. הקטע ש  
בתגובה להודעה מספר 3
 
   עשינו תרגיל דומה עם true ו false רק עם מערך אחד והאם הוא שווה לפחות בחצי שלו בסדר עולה.
ניסינו לעשות עם for והיתה איזושהי בעיה עם אחד המשתנים שהוא עובר מעל המספר התאים של המערך.
בקיצור, עשיתי עם while אבל אני רוצה לדעת אם זה נכון.
בטבלת מעקב זה יוצא לי נכון


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

   20:48   26.12.04   
אל הפורום  
  5. לא הבנתי את הפיתרון שלך...  
בתגובה להודעה מספר 4
 
   ערכתי לאחרונה בתאריך 26.12.04 בשעה 20:56 בברכה, Dark Megical
 
ולפי מה שאני רואה יש לך טעויות ענקיות
כמו למשל לא כותבים array1=array2
אלא כותבים:

array1{i}=array2{j}
בגלל שאתה צריך לבדוק את האיבר שבתוך המערך..
ומה שאתה עשית זה להשוות את השם שלהם...
והסוגריים צריכות להיות מרובעות ולא מסולסלות כמו שרשמתי

ויש לך עוד טעויות שרשמת אותם והם בכלל לא קשורים לתרגיל
בכל מקרה

הנה פתרון ממש נוח בלולאת FOR:


program Maarah;
type arr=array of integer;
var a,a1:arr;
i,j:integer;
x:boolean;
function arrays(a,a1:arr): boolean;
var i,j:integer;
check:boolean;
begin
check:=false;
i:=1; j:=1;
for i:=1 to 5 do
begin
if a{i}=a1{j} then
begin
check:=true;
j:=j+1;
end
else check:=false;
end;
arrays:=check;
end;

begin
for i:=1 to 5 do
readln(a{i});
for j:=1 to 5 do
readln(a1{j});
x:=arrays(a,a1);
writeln(x);
end.

דרכים אחרות יהיו רק מסורבלות יותר לפי דעתי...
מקווה שזה עוזר לך :\


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

   20:52   26.12.04   
אל הפורום  
  6. תודה רבה  
בתגובה להודעה מספר 5
 
  


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

   20:55   26.12.04   
אל הפורום  
  7. חכה זה מחק את כל הסוגריים המרובעות....  
בתגובה להודעה מספר 6
 
   שים לב לתיקון שעשיתי
כל מקום שיש סוגריים מסולסלות זה אמור להיות מרובעות


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

   21:02   26.12.04   
אל הפורום  
  8. כן תודה אבל שמע רגע  
בתגובה להודעה מספר 7
 
   הבנתי מה עשית, אבל בלי קשר ל j,i זה עדיין פועל בעצם רק על מערך אחד לא ?
וצריך שתיים.


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

   21:09   26.12.04   
אל הפורום  
  9. לא, בעצם הבנתי  
בתגובה להודעה מספר 8
 
   הריי type בעצם הוא רק סוג של הגדרה. אבל בעצם יש שתי מערכים.
תודה


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

   14:24   27.12.04   
אל הפורום  
  10. ממ  
בתגובה להודעה מספר 0
 
   אנשים מה רשמתם פה??
הנה:


Program Ex;
type
x=array{1..5} of integer;
var
a1,a2:x;

Function Check(m1,m2:x):boolean;
var
i:integer;
ch:boolean;
begin
ch:=true;
For i:=1 to 5 do
if a{i}<>a{j} then
ch:=false;
Check:=ch;
end;

Begin
if check(a1,a2) then
writeln('זהים')
else
writeln('לא זהים');
End.


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

   16:54   27.12.04   
אל הפורום  
  11. :| למה אתה שולל? שלך בכלל לא נכון :|  
בתגובה להודעה מספר 10
 
   בכלל בכלל לא נכון :|


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

   23:51   28.12.04   
אל הפורום  
  12. הנה התיקון- המקלדת הייתה על Insert  
בתגובה להודעה מספר 11
 
   ערכתי לאחרונה בתאריך 28.12.04 בשעה 23:55 בברכה, hbk3
 
כשרשמתי- ולא התכוונתי להיות בוטה- עמכם הסליחה


Program Ex;
type x=array{1..5} of integer;
var
a1,a2:x;

Function Check(m1,m2:x):boolean;
var
i:integer;
ch:boolean;
begin
ch:=true;
For i:=1 to 5 do
if m1{i}<>m2{i} then
ch:=false;
Check:=ch;
end;

Begin
if check(a1,a2) then
writeln('זהים')
else
writeln('לא זהים');
End.


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

   10:34   29.12.04   
אל הפורום  
  13. עכשיו זה טוב :S  
בתגובה להודעה מספר 12
 
  


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

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

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



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