Δευτέρα 24 Νοεμβρίου 2014

Άσκηση με πίνακες if-for

program third_program_with_arrays;
var
i,sum:integer;
ONOMA:array[1..5] of string;
BATH:array[1..5] of integer;
MO:real;

begin
  for i := 1 to 5 do
    begin
    writeln('Δώσε το όνομά σου');
    readln(ONOMA[i]);
    writeln('Δώσε το βαθμό που πήρε στην Pascal ');
    readln(BATH[i]);
    end
  ;
   for i:=1 to 5 do
   begin
   writeln(ONOMA[i]:10, ' ', BATH[i]);
   if BATH[i]>10 then
   begin
   writeln('Μπράβο καλέ μαθητή/τριά πέρασες');
   end
   else
   begin
   writeln('Είσαι άχρηστος/η δεν θα προκόψεις στη ζωή σου');
   end;
   end
   ;
   writeln('Ο συνολικός Μ.0 της τάξης σου είναι');
   sum:=0;
   for i:=1 to 5 do
   begin
   sum:=sum+BATH[i];
   end
   ;
   MO:=sum/5;
   writeln(MO);
 
 
end.   

Παρασκευή 21 Νοεμβρίου 2014

Πρόγραμμα με Διαδικασίες με παραμέτρους και κυρίως πρόγραμμα μαζί

Πρόγραμμα με Διαδικασίες με παραμέτρους και κυρίως πρόγραμμα μαζί


program Ex_with_procedures;
var
  a,b,c:integer;

procedure diadikasia(var x,z,sum:integer);
   
  begin
     writeln('Αυτό κάνει η διαδικασία μου, προσθέτει 2 τιμές και εμφανίζει το αποτέλεσμα στην οθόνη');
     sum := x + z;
  end;

begin {αυτό είναι το κυρίως μου πρόγραμμα}
  writeln('Θα δοκιμάσω μια διαδικασία');
  a:= 5;
  b:= 4;
  diadikasia(a,b,c);{εδώ καλώ τη διαδικασία μου}
  writeln(c);
end.

Παρασκευή 14 Νοεμβρίου 2014

Άσκηση με while την οποία ελέγχει ο χρήστης και την οποία δεν ελέγχει απλά κάνει ένα συγκεκριμένο αριθμό επαναλήψεων με βήμα 2.

program while_and_if;

var
x:integer;
begin

    readln(x);
    while x <> 0 do
      begin
         writeln(2*x);
         readln(x);
      end
    ;
    writeln('Ευχαριστώ Πολύ');
    
    x :=2;
    while x <= 10 do
       begin
          writeln(2*x);
          x := x +2;
       end
    ;

end.

Άσκηση Νούμερο 3 WHILE,FOR και IF

Εκφώνηση
Να γίνει πρόγραμμα σε pascal το οποίο:

α) Να περιέχει τμήμα δηλώσεις μεταβλητών

β) Να διαβάζει απο το πληκτρολόγιο έναν 4ψηφιο αριθμό\

γ)Αν ο αριθμός δεν ειναι 4ψηφιος να εμφανίζει ένα ακατάλληλο μήνυμα και έπειτα να τερματίζει.

δ)Σε διαφορετική περίπτωση το πρόγραμμα να υπολογίζει και να εμφανίζει τον παλινδρομικό(αντίθετο του) αριθμό

ε)Όλα τα παραπάνω να επαναλαμβάνονται μέχρι να πατηθεί ο αριθμός 0

στ)Το πρόγραμμα να προσθέτει τα ψηφία του αρχικού αριθμού και να βγάζει ένα κατάλληλο μήνυμα
Πώς σπάω έναν αριθμό στα ψηφία του;

Λύση


program while_if_and_for_duskoli;
var
x,y1,y2,y3,y4,sum1,sum2,sum_total,sum,k,l,palindr:integer;
begin
writeln('Πάτησε εναν αριθμό!');
readln(x);
while x <> 0 do
  begin
   if (x >= 1000) and (x <=9999) then
      begin
        writeln('Ο αριθμός που πάτησες είναι τετραψήφιος');
        writeln('Τώρα σπάω τον αριθμό στα ψηφία του.');
        y1 := x div 1000;
        k := x mod 1000;
        y2 := k div 100;
        l := k mod 100;
        y3 := l div 10;
        y4 := l mod 10;
        palindr := y4*1000 + y3*100 + y2*10 + y1*1;
        writeln('Ο παλλινδρομικός σου αριθμός είναι: ',palindr);
        sum := y1 + y2 + y3 + y4;
        if sum > 26 then
          begin
            sum1 := sum div 10;
            sum2 := sum mod 10;
            sum_total := sum1 + sum2;
            writeln('Ψάξε βρες τώρα ποιός σε σκέφτετε. Πάντως βγήκε το νούμερο ',sum_total,' αλλά δεν είμαι εγω!!!!');
          end
        else
          begin
            sum_total := y1 + y2 + y3 + y4;
            writeln('Ψάξε βρες τώρα ποιός σε σκέφτετε. Πάντως βγήκε το νούμερο ',sum_total,' αλλά δεν είμαι εγω!!!!');
          end
        ;
      end
   else
      begin
        writeln('Δυστυχώς ο αριθμός που πάτησες δεν είναι τετραψήφιος!');
      end
   ;
   writeln('Πάτα κι άλλον αριθμό');
   readln(x);
  end
;
writeln('Ευχαριστώ. Γειά σας. Τα δέοντα.');
end.

Δευτέρα 10 Νοεμβρίου 2014

Να γίνει πρόγραμμα το οποίο
1.  να διαβάζει επαναληπτικά από το πληκτρολόγιο αριθμούς.
2. Για κάθε αριθμό
α. να εμφανίζει ποιός είναι (τον εαυτό του) και
β. αν είναι άρτιος ή περιττός.

3. Ο αλγόριθμος να τερματίζει όταν πατηθεί το μηδέν 3 φορές.

program deixnw_ti_while_sta_paidia_mou;
var
 x,fores_pou_patisa_mhden:integer;
begin
  fores_pou_patisa_mhden:= 0;
  writeln('Πάτα αριθμούς από το πληκτρολόγιο οκ;)');
  readln(x);
  while fores_pou_patisa_mhden < 3 do
    begin
       writeln('Ο αριθμός που πάτησες είναι: ',x);
       if x mod 2 = 0 then
        begin
         writeln('Ο αριθμός που πάτησες είναι άρτιος');
        end
       else
        begin
         writeln('Ο αριθμός που πάτησες είναι περιττός');
        end
       ;
       if x = 0 then
        begin
         fores_pou_patisa_mhden := fores_pou_patisa_mhden + 1;
        end
       ;
       writeln('Πάτα κι άλλον άμα γουστάρεις γκιζντάνι');
       readln(x);
    end
  ;
  writeln('MPAI');
end.

Παρασκευή 7 Νοεμβρίου 2014

Συνδυασμός των δομών FOR και IF στην ίδια άσκηση!

Να γίνει πρόγραμμα σε Pascal το οποίο να διαβάζει από το πληκτρολόγιο 10 ακέραιους αριθμούς και να υπολογίζει και να εμφανίζει:
α. Για κάθε έναν το μήνυμα "ΑΡΤΙΟΣ" αν ο αριθμός είναι άρτιος ή το μήνυμα "ΠΕΡΙΤΤΟΣ" αν ο αριθμός είναι περιττός.
β. Το πλήθος των άρτιων και το πλήθος των περιττών αριθμών που πατήθηκαν
γ. Το άθροισμα όλων ( ανεξαιρέτως ) των αριθμών.

Λύση  

program For_and_if;

var
   x,a,ca,cp: integer;
   sum:integer;

begin
  write('ΘΑ ΠΑΤΗΣΩ 10 ΑΡΙΘΜΟΥΣ ΚΑΙ ΘΑ ΜΟΥ ΒΓΑΖΕΙ ΓΙΑ ΚΑΘΕ ΕΝΑΝ ');
  writeln('ΑΝ ΕΙΝΑΙ ΑΡΤΙΟΣ Ή ΠΕΡΙΤΤΟΣ');
  ca := 0; { όπου ca ο μετρητής των ΑΡΤΙΩΝ}
  cp := 0; { όπου cp ο μετρητής των ΠΕΡΙΤΤΩΝ}
  sum:= 0;
  for x:=1 to 10 do
   begin
    writeln('Σε παρακαλώ γκιζντάνι, να πατάς ακέραιες τιμές!!!');
    readln(a);
    sum := sum + a;
    if a mod 2 = 0 then
      begin
        writeln('ΑΡΤΙΟΣ');
        ca := ca + 1;
      end
    else
      begin
        writeln('ΠΕΡΙΤΤΟΣ');
        cp := cp + 1;
      end
    ;
   end
  ;
  writeln('Άρα φιλαράκο πάτησες ',ca, ' ΑΡΤΙΟΥΣ');
  writeln('και ',cp, ' ΠΕΡΙΤΤΟΥΣ');
  writeln('Το συνολικό άθροισμα των νούμερων είναι: ', sum);
  end.

Όλοι μαζί και πάλι στο προαύλιο της σχολής!!!

Και άλλες selfieeeee!!!!! από όλους μας.