Τώρα είναι Πέμ 28 Μαρ 2024 11:03 pm

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]




Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 4 Δημοσιεύσεις ] 
Συγγραφέας Μήνυμα
 Θέμα δημοσίευσης: Τρίγωνο Pascal
ΔημοσίευσηΔημοσιεύτηκε: Παρ 21 Μάιος 2004 11:19 am 
Χωρίς σύνδεση

Εγγραφή: Πέμ 22 Απρ 2004 11:16 am
Δημοσιεύσεις: 60
Τοποθεσία: Θεσσαλονίκη
Syntax: [ Download ] [ Hide ]
! =====================================================================================================================
! Να γραφεί πρόγραμμα το οποίο:
! α) θα διαβάζει έναν ακέραιο θετικό αριθμό Ν μικρότερο ή ίσο του 10,
! β) θα υπολογίζει τις τιμές των στοιχείων του τριγώνου Pascal μέχρι τη Νιοστή γραμμή
! γ) θα δημιουργεί έναν δισδιάστατο πίνακα Nx(N+1), ο οποίος θα έχει ως στοιχεία τις τιμές του παραπάνω τριγώνου Pascal
! Το τρίγωνο Pascal συμπληρώνεται ως εξής: Το πρώτο και το τελευταίο στοιχείο κάθε γραμμής είναι το 1.
! Κάθε ενδιάμεσο στοιχείο είναι το άθροισμα του στοιχείου που βρίσκεται στην προηγούμενη γραμμή,
! ακριβώς πάνω από αυτό, και αυτού που βρίσκεται στην αμέσως αριστερή θέση. Το τρίγωνο Pascal 5 γραμμών έχει ως εξής:
!
! K=1 -->  1  1
! K=2 -->  1  2  1
! Κ=3 -->  1  3  3  1
! Κ=4 -->  1  4  6  4  1
! Κ=5 -->  1  5  10 10 5 1
! =====================================================================================================================

ΠΡΟΓΡΑΜΜΑ Τρίγωνο_Pascal
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ:i,j,Ν,Pascal[10,11]
ΑΡΧΗ
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Δώσε πλήθος γραμμών του τριγώνου Pascal(1-10)'
    ΔΙΑΒΑΣΕ Ν
  ΜΕΧΡΙΣ_ΟΤΟΥ (Ν>=1) ΚΑΙ (Ν<=10)

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ Ν+1
      ΑΝ j-i>1 ΤΟΤΕ
        Pascal[i,j] <-- 0
      ΑΛΛΙΩΣ_ΑΝ (j=1) Ή (j-i=1) ΤΟΤΕ
        Pascal[i,j] <-- 1
      ΑΛΛΙΩΣ
        Pascal[i,j] <-- Pascal[i-1,j]+Pascal[i-1,j-1]
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν                 ! ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ N
    j <-- 1                           !   ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ N+1
    ΟΣΟ Pascal[i,j]<>0 ΕΠΑΝΑΛΑΒΕ      !     ΓΡΑΨΕ_ Pascal[i,j],' '
      ΓΡΑΨΕ_ Pascal[i,j],' '          !   ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
      j <-- j+1                       !    ΓΡΑΨΕ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ                  !  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

 


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
 Θέμα δημοσίευσης:
ΔημοσίευσηΔημοσιεύτηκε: Σάβ 11 Φεβ 2006 02:46 pm 
Εάν δώσουμε Ν=10 δημιουργείται σφάλμα χρόνου εκτέλεσης.
Μάλλον φταίει η τελευταία ΟΣΟ. Προσπαθεί να ελεγξει ένα στοιχείο του πίνακα που δεν υπάρχει (είναι εκτός ορίων του πίνακα).


Κορυφή
  
Απάντηση με παράθεση  
 Θέμα δημοσίευσης:
ΔημοσίευσηΔημοσιεύτηκε: Τρί 14 Φεβ 2006 02:04 am 
Χωρίς σύνδεση

Εγγραφή: Πέμ 22 Απρ 2004 11:16 am
Δημοσιεύσεις: 60
Τοποθεσία: Θεσσαλονίκη
Φίλε επισκέπτη έχεις απόλυτο δικιο ! Τυπώνει τον πίνακα μέχρι και την 10η γραμμή και "κολαει" στον τελευταίο έλεγχο της ΟΣΟ. Παραθετω μια απηλαγμένη της ΟΣΟ λύση.

Syntax: [ Download ] [ Hide ]
ΠΡΟΓΡΑΜΜΑ Τρίγωνο_Pascal
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ:i,j,Ν,Pascal[10,11]
ΑΡΧΗ
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Δώσε πλήθος γραμμών του τριγώνου Pascal(1-10)'
    ΔΙΑΒΑΣΕ Ν
  ΜΕΧΡΙΣ_ΟΤΟΥ (Ν>=1) ΚΑΙ (Ν<=10)

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ i
      ΑΝ (j=1) Ή (j-i=1) ΤΟΤΕ
        Pascal[i,j] <-- 1
      ΑΛΛΙΩΣ
        Pascal[i,j] <-- Pascal[i-1,j]+Pascal[i-1,j-1]
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ i
      ΓΡΑΨΕ_ Pascal[i,j],' '
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
 

_________________
Φρειδερίκος Κώστας
FreiderikosK@hotmail.com


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
 Θέμα δημοσίευσης: PASCAL (2)
ΔημοσίευσηΔημοσιεύτηκε: Τρί 06 Μαρ 2007 01:54 pm 
Χωρίς σύνδεση

Εγγραφή: Τρί 06 Μαρ 2007 01:32 pm
Δημοσιεύσεις: 1
TI simbenei ean prosthesoume ta stoixeia diagonios?
POIA akolouthia prokiptei?
PIOS einai o Φ?




Syntax: [ Download ] [ Hide ]
ΠΡΟΓΡΑΜΜΑ Τρίγωνο_Pascal
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ:i,r,SUM[10],j,Ν,Pascal[10,11]
ΑΡΧΗ
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Δώσε πλήθος γραμμών του τριγώνου Pascal(1-10)'
    ΔΙΑΒΑΣΕ Ν
  ΜΕΧΡΙΣ_ΟΤΟΥ (Ν>=1) ΚΑΙ (Ν<=10)

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ i
      ΑΝ (j=1) Ή (j-i=1) ΤΟΤΕ
        Pascal[i,j] <-- 1
      ΑΛΛΙΩΣ
        Pascal[i,j] <-- Pascal[i-1,j]+Pascal[i-1,j-1]
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ Ν
      ΓΡΑΨΕ_ Pascal[i,j],' '
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ r ΑΠΟ 1 ΜΕΧΡΙ Ν
    SUM[r] <-- 0
    ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
      ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ Ν
        ΑΝ i+j=r+1 ΤΟΤΕ
          SUM[r] <-- SUM[r]+Pascal[i,j]
        ΤΕΛΟΣ_ΑΝ
      ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ_ SUM[r]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΡΑΨΕ
  ΓΙΑ r ΑΠΟ 2 ΜΕΧΡΙ Ν
    ΓΡΑΨΕ_  sum[r]/sum[r-1]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ
  ΓΡΑΨΕ (Τ_Ρ(5)+1)/2


ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
 






Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
Τελευταίες δημοσιεύσεις:  Ταξινόμηση ανά  
Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 4 Δημοσιεύσεις ] 

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]


Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 4 επισκέπτες


Δεν μπορείτε να δημοσιεύετε νέα θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να απαντάτε σε θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επεξεργάζεστε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να διαγράφετε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επισυνάπτετε αρχεία σε αυτή τη Δ. Συζήτηση

Αναζήτηση για:
Μετάβαση σε:  
cron
Προβολές: