Προς το περιεχόμενο

Ερωτηση για if


theo2008

Προτεινόμενες αναρτήσεις

Δημοσ.

Θα ηθελα λιγο την βοηθεια σας σε κατι που μαλλον ειναι ευκολο απλα εχω κολλησει:

εχω αυτο εδω το κομματακι κωδικα σε matlab στο οποιο αρχικα δινω τιμες στα minn-maxn και ελεγχει στο if αν το minn<1e9 και maxn>9e11.

Εχω κολλησει στο εξης:Τι πρεπει να γραψω μεσα στις αγκυλες ωστε οταν υπερβαινουν τα ορια οι τιμες να βγαζει μηνυμα σφαλματος 'error,give the values again' και να με επαναφερει στην αρχικη κατασταση δηλωσης τιμων των minn,maxn?

>
minn=input('dose ndot1 min:');
maxn=input('dose ndot1 max:');

if minn<1e9 & maxn>9e11
   {
  
   }
end

 

Ευχαριστω εκ των προτερων!!!

Δημοσ.

Βασικα ισως να μην το διατυπωσα σωστα.Αρχικα δινω 2 τιμες στα minn,maxn.Ελεγχει αν minn<1e9 ή maxn>9e11.Αν δεν ισχυει 1 απο τα 2 τοτε να εμφανιζει μηνυμα σφαλματος και να ξαναδινει τιμες στα minn,maxn αλλιως να προχωραει στα

demin=input('dose de1 min:');

demax=input('dose de1 max:');

Δηλαδη κατι τετοιο

>
minn=input('dose ndot1 min:');
maxn=input('dose ndot1 max:');
if minn<1e9 || maxn>9e11
{
printf('error.dose ksana times')
}
else
{
demin=input('dose de1 min:');
demax=input('dose de1 max:');
}
end 

Το εκανα ετσι αλλα δεν τρεχει.Ξεχναω κατι?

Δημοσ.

printf() στο MATLAB δεν υπαρχει (ο κωδικας που εχεις βαλει ειναι mixed Kebab), μαλλον εννοεις disp().

 

Και ξαναλεω γιατι δεν το κανεις ετσι;

 

>
minn = 0;
maxn = 0;

while minn<1e9 || maxn>9e11
   minn=input('dose ndot1 min:');
   maxn=input('dose ndot1 max:');
   if minn<1e9 || maxn>9e11
      disp('error. dose ksana times')
   end 
end

 

:-)

Δημοσ.

Εχεις δικιο Dr.Fuzzy αυτον τον τροπο θα χρησιμοποιησω.Μηπως γνωριζετε πως και αν μπορω να βαλω και μια συνθηκη για exit?Να βγαινει απο τον βρογχο δηλαδη?

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...