Δευτέρα, 25 Ιουλίου 2011

Άσκηση : συγγραφή διαδικασίας

Γράψτε διαδικασία η οποία δέχεται ως παραμέτρους τρεις
πραγματικές τιμές α, β, γ, ελέγχει αν αποτελούν μήκη πλευρών
τριγώνου και στη συνέχεια:
* αν τα α, β, γ είναι μήκη, υπολογίζεται το εμβαδόν Εμβ και
   η περίμετρος Περ του αντίστοιχου τριγώνου,
* αν τα α, β, γ δεν είναι μήκη, οι παράμετροι αποτελέσματος
   Εμβ και Περ παίρνουν ως τιμή τους το -1.
Υπενθυμίσεις
Ι. Τα α, β, γ είναι μήκη πλευρών τριγώνου αν είναι θετικά
    και  ικανοποιούν την τριγωνική ανισότητα:
         α+β > γ
         β+γ > α
         α+γ > β
ΙΙ. Το εμβαδόν Εμβ μπορεί να υπολογιστεί με τη
      βοήθεια  του παρακάτω τύπου (διατυπωμένου από
      τον Ήρωνα τον Αλεξανδρέα)
          Εμβ*Εμβ = Μ*(Μ-α)*(Μ-β)*(Μ-γ), 
      όπου Μ = (α+β+γ)/2


Λύση


       ΔΙΑΔΙΚΑΣΙΑ ΤΡΙΓ(α, β, γ, Εμβ, Περ)
       ΜΕΤΑΒΛΗΤΕΣ
               ΠΡΑΓΜΑΤΙΚΕΣ : α, β, γ, Μ, Εμβ, Περ
       ΑΡΧΗ
               ΑΝ (α > 0) ΚΑΙ (β > 0) ΚΑΙ (γ > 0) ΚΑΙ
                     (α+β > γ) ΚΑΙ (β+γ > α) ΚΑΙ (α+γ > β)
               ΤΟΤΕ
                      Περ <-- α+β+γ
                      Μ <-- Περ/2
                      Εμβ <-- Τ_Ρ(Μ*(Μ-α)*(Μ-β)*(Μ-γ))
               ΑΛΛΙΩΣ
                      Εμβ <-- -1
                      Περ <-- -1
               ΤΕΛΟΣ_ΑΝ
       ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου