[Anwendung] einfacher Blockraterechner

Infos, Guides und deine Fragen
Benutzeravatar
Shaymin
Intern
Beiträge: 1740
Registriert: 15. Dez 2011, 20:59
Wohnort: Arkasha Stratum

[Anwendung] einfacher Blockraterechner

Beitragvon Shaymin » 4. Jun 2017, 21:25

Quellcode für alle die dem nicht trauen.
Programm enthält keine Maßnahmen zur Fehlerbehandlung, also einfach den Anweisungen folgen.

//Sry, für oldschool Pascal aber hatte gerade auf die Schnelle keine Möglichkeit an fertige .exen zu kommen außer damit

Code: Alles auswählen

program blckcalc; USES CRT; Type range = 1..155; jobID = 1..8; CONST ffactor : Array [jobID] of real = (0.3, 0.7, 1.5, 1.0, 0.3, 0.3, 0.6, 0.7); VAR P_lv, E_lv : range; P_dx, E_dx : integer; S_bl : integer; job : jobID; c,d : real; procedure header(); begin clrscr; Writeln('Blockrate calculator'); Writeln('===================='); writeln(''); end; procedure readInput(); begin writeln('Gib dein Level und das Level deines Gegner ein (durch Leerzeichen getrennt)'); readln(P_lv, E_lv); writeln('Gib deinen DEXwert und den angenommenen DEXwert deines Gegners ein (durch Leerzeichen getrennt)'); readln(P_dx, E_dx); writeln('Gib die Summe aller deiner Blockrate + X Effekte ein'); readln(s_bl); Writeln('Gib die Nummer deiner Klasse ein'); Writeln('1 Ranger'); Writeln('2 Jester'); Writeln('3 Blade'); Writeln('4 Knight'); Writeln('5 Psykeeper'); Writeln('6 Elementor'); Writeln('7 Ringmaster'); Writeln('8 Billposter'); readln(job); end; procedure formula(CONST d : real); begin writeln('a = Player_Level / ( (Player_Level + Enemy_Level) * 15 )'); writeln('b = ( Player_DEX + Enemy_DEX + 2 ) * ( Player_DEX - Enemy_DEX ) * 0,00125'); writeln('if b > 10 then b = 10'); writeln('c = a + b'); writeln('if c < 0 then c = 0'); writeln('d = ( ffactor * Player_DEX * 0,125 + c + static_block ) * 1,25'); writeln('if d > 93.75 then d = 93.75'); Writeln('Blockrate : ',d:0:2); readln; end; function calcLvl (CONST P_lv, E_lv : range) : real; begin calcLvl := P_lv / ( ( P_Lv + E_lv ) * 15 ); end; function calcDexRel (CONST P_dx, E_dx : integer) : real; begin if ( ( P_dx + E_dx + 2 ) * ( ( P_dx - E_dx ) * 0.00125 ) > 10 ) then calcDexRel := 10 else calcDexRel := ( P_dx + E_dx + 2 ) * ( ( P_dx - E_dx ) * 0.00125 ); end; begin header; readInput; header; c := calcLvl(P_lv, E_lv) + calcDexRel(P_dx, E_dx); if c < 0 then c := 0; d := ( ffactor[job] * P_dx * 0.125 + c + s_bl ) * 1.25; if d > 93.75 then d := 93.75; formula(d); end.
blckcalc.zip
(34.12 KiB) 47-mal heruntergeladen
Benutzeravatar
AtizZ
Beiträge: 205
Registriert: 21. Mär 2017, 15:01
Wohnort: Köln

Re: [Anwendung] einfacher Blockraterechner

Beitragvon AtizZ » 4. Jun 2017, 21:28

Merci

/verlegen
/omg

Zurück zu „Infos & Guides“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast