Quantcast
Channel: Всички форуми
Viewing all articles
Browse latest Browse all 5785

Малко помощ с Lazarus

$
0
0
Здравейте, нещо не мога да се справя с if и съм тотално блокирал, да не говорим че отдавна не съм писал на Паскал (има няма над 12-тина години), но ми се наложи да направя една програма за изчисление и зациклих тук, ако може някой да помогне:

modul:=5-(preminali_6+preminali_5+preminali_4+preminali_3+preminali_2)/100;
modul_edit.Text:=FloatToStrf(modul,ffFixed,5,2);
if (modul<2) or (modul>3.9) then
  begin
	vid:='Грешка';
	vid_edit.Text:=vid;
  end;
if (modul=2) or (modul=2.1) or (modul=2.2) or (modul=2.3) or (modul=2.4) or (modul=2.5) or (modul=2.5) then
  begin
	vid:='Ситен';
	vid_edit.Text:=vid;
  end;
if (modul=2.6) or (modul=2.7) or (modul=2.8) or (modul=2.9) or (modul=3.0) or (modul=3.1) or (modul=3.2) then
  begin
	vid:='Среден';
	vid_edit.Text:=vid;
  end;
if (modul=3.3) or (modul=3.4) or (modul=3.5) or (modul=3.6) or (modul=3.7) or (modul=3.8) then
  begin
	vid:='Едър';
	vid_edit.Text:=vid;
  end;
end;

Лошото е че, не получавам грешка и проекта се компилира.
След изчисленията обаче действа само зададеното на първият if т.е. извеждането в полето текста "Грешка". В смисъл извежда се текста, само ако крайният резултат т.е. "modul" е по-малък от 2 и по-голям от 3.9 - което е зададено в първият if. При друг резултат извън диапазона на дефинирата от мен "Грешка" не се извежда нищо. Т.е. дори и да е в диапазона на "Ситен", "Среден" и "Едър" не се извежда нищо, полето е празно. Нещо някъде бъркам, но не мога да схвана къде.

Viewing all articles
Browse latest Browse all 5785

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>