Kezdőoldal » Számítástechnika » Programozás » Hogy lehetséges ezt a programo...

Hogy lehetséges ezt a programozási feladatot megoldani?

Figyelt kérdés

Azt szeretném megoldani,ha nem túl komplikált,hogy az egész beírómezőben,bármilyen műveleti jelet írnak, sor előtt, sor(ok) után, szám(ok) előtt, szám(ok) után, akkor elvégezze a feladatot, tehát,hogyha beírom, pl:


12+23-4/6*8+12/7777+55-777*9999, akkor végezze el ezt a bonyolult műveletet és erről egy másik beírómezőben adjon pontos végeredményt. Nagyon sok időt rászántam, hogy megtaláljam a megoldást, mindenre jutottam, csak vagy az

eredményt nem tudtam kihozni, vagy a program nem működött megfelelően. Próbálkoztam a seltextet bevonni,a gettextlent, a sellengthet, másik ciklust, ami a -1-et helyettesíti be, akár e j változóba, kivonni, tömbök alá venni az edit1.text-et[edit1.selstart]-tal, kivonni, osztani szorozni, mindenféle kombinációt, kicserélni az edit1.texteket, edit1.seltextekre, de nem sikerült a feladatot megoldanom normális működő módon. Ebben szeretnék segítséget kérni, ha lehet természetesen forráskóddal mellékelve, mert úgy vélem, hogy ez annál komplikáltabb dolog lehet, hogy szóban megértsem, mit hogyan kell tennem, vagy milyen további, esetleges függvényeket kell, hogy bevonjak a programba, amivel ezt működőképessé lehet varázsolni. Előre is köszönök, minden segítséget és megoldást.



unit Unit1;


interface


uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls,Strutils, ExtCtrls;


type

TForm1 = class(TForm)

Edit1: TEdit;

Edit2: TEdit;

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;


var

Form1: TForm1;


implementation


{$R *.dfm}


procedure TForm1.Edit1Change(Sender: TObject);

var sign:char;

i,w:integer;

begin

try



For i:=1 to length(edit1.Text) do

If not (edit1.Text[i] in ['0'..'9']) then

Begin

sign:=edit1.Text[i];

w:=i;

End;



Case sign of

'*': edit2.Text:= floattostr(strtofloat(LeftStr(edit1.Text,w-1)) * strtofloat(rightstr(edit1.Text,length(edit1.Text)-w)));

'/': edit2.Text:= floattostr(strtofloat(LeftStr(edit1.Text,w-1)) / strtofloat(rightstr(edit1.Text,length(edit1.Text)-w)));

'+': edit2.text:= floattostr(strtofloat(LeftStr(edit1.Text,w-1)) + strtofloat(rightstr(edit1.Text,length(edit1.Text)-w)));

'-': edit2.Text:= floattostr(strtofloat(LeftStr(edit1.Text,w-1)) - strtofloat(rightstr(edit1.Text,length(edit1.Text)-w)));


End;



except

On ECONVERTERROR DO BEGIN

end;

end;

end;

end.



2013. okt. 28. 13:09
1 2 3 4 5 6 7 8
 21/80 anonim ***** válasza:
74%
Amúgy sok sikert majd a munkahelyen, hisztizhetsz majd a főnököknek, amiért a többi alkalmazott nem oldja meg helyetted a feladatot... :D
2013. okt. 28. 21:34
Hasznos számodra ez a válasz?
 22/80 anonim ***** válasza:
0%
hő.:D :D csak röhögni tudok rajtatok,milyen ökörségeken tudtok összevitázni.én azért megértem a csávót,hogyha igaz,hogy napok óta ezt nyomatta és csak eddig jutott el,viszont nem értelek meg benneteket abban,hogy ő nyomott legalább nektek egy működő,de nem a feladatot végző inputot és ba**tok rá nyomni egy használható outputot, még ha azt kérte volna szó szerint, hogy oldjátok meg a feladatot, akkor persze, hogy értelme van a beintésnek, de így hogy ő adott egy kezdő lökést és nem azt várta el és írta ki nektek, nulla source code nélkül, hogy adott egy lengyel formás alapokon nyugvó, rpn funkciókat magában foglaló un. expression evualator szintű számológép és nyomassatok neki ebből egy fapados textbázisú editboxban működő professzionális ketyerét. Hanem ő csupán valszeg, azt szerette volna, hogy az ő kis matek műveleteivel felruházott marhaságát, egészítsétek ki és hozzátok rendbe azt, minimálisan átformálva,tesztelhető változata téve az ö kis világa számára. Ő úgy vélem ennyit akart,úgyhogy akárki-akármit mond, ti nektek kellett volna ezt észrevenni és nem arra kényszeríteni szerencsétlent,hogy bármi áron, oldja meg a feladatot. ti vagytok a tanárai??? azt sem tudjátok ki ő, egyáltalán suliba kellett neki ez,vagy csak gyakorlásra, mit tudtok ti erről a valakiről. semmit!!! egyet viszont igen,hogy leszóltátok, lebecsméreltétek és letámadtátok őt,mint a nagy büdös szart,ahelyett,hogy valaki vette volna a fáradtságot és nem többet,mint az ő kérésének eleget téve megoldotta volna ezt a kis történetet.ő nem azt kérte,hogy azt a forráskódot linkeljétek be ide,amin a microsoft ezen a téren megazdagodott,hanem csak ezt a kis szart,hogy neki működjön az elvárásai szerint.én erre gondoltam,ám fennáll az is,hogy tévedek és lehet,hogy ő is tudja,megtudta,vagy már eddig is tudta megoldást és csak itt tesztelgetni szeretett volna bennünket.hiszen ennek a lehetősége is fennáll. mint ahogy nálatok is,hogy direkt akár ki*aszásból,vagy csökönyösségből,genyoságból,nem törödömségből adódóan szívatjátok itt a kezdő,vagy gyakorló jó népet. és az is,hogy valójában ti sem tudjátok rá a konkrét megoldást,csak az eszeteket játsszátok itt, hogy jól alárendeljetek, lehurrogjátok az embereket. egyébként egy ilyen szintű, PARSE, kifejezés elemző és végrehajtó kalkulátort, akár még kicsiben is *urva nehéz elkészíteni,mert kismillió karakterkonverziós hibát generál addig, míg a végére nem értek a forráskódnak a folyamatos saját javítgatás és tesztelgetés során. a fordított lengyelforma meg külön történet,hogy azt szerencsétlen, ha igaz hogy nem tudta, tényleg megértse annak működését,ha esetleg tovább szerette volna fejleszteni a progiját. szóval úgy érzem,hogy itt senki nem volt korrekt ember ebben a témában. én sem tartom magam annak, csak egy kicsit megpróbáltam átérezni és átgondolni az ő fejével a helyzetet. no szóval nem akarok itt tovább papolni, nulla pont megy mindenkinek,aki itt volt ebben a témakörben, ha tetszik, ha nem.
2013. okt. 29. 15:59
Hasznos számodra ez a válasz?
 23/80 anonim ***** válasza:
80%

Hú, de hosszan sikerült leírnod azt, hogy milyen szemetek vagyunk mert nem írtunk a kérdezőnek kész forráskódot. (külön puszi a sok szakkifejezésért, ettől valóban úgy tűnik, mintha értenél hozzá :)

Én viszont még mindig tartom az álláspontom, és szerintem a többiek is.

G.

2013. okt. 29. 16:14
Hasznos számodra ez a válasz?
 24/80 anonim ***** válasza:
0%
hát persze tartsd is magad én is tartom magamat az enyéméhez! te is vagy valaki,jogod van hozzá, hogy megjátszd magad,de hogy te sem vagy segítőkész,mint ahogy én sem tartom magam annak,az tisztán látszik és ezt hiába kritizálod meg, ez a nagy büdös igazság "gyerekek"!
2013. okt. 29. 16:18
Hasznos számodra ez a válasz?
 25/80 anonim ***** válasza:
100%

Én is tartom magam az álláspontomhoz.


#22: te biztos hiperjószívű vagy, ami dicséretes, de picit el vagy tévedve.


A kérdező kapott használható (!) megoldási tippet, konkrét megoldást is magyarázattal, és szart rá. Szart rá utánanézni és szart rá gondolkodni rajta, próbálkozni vele. Azt írta, megvárja, míg a jószívű kolléga megírja helyette, meg sem próbálta egyedül összetákolni.


A kérdező kódján nem lett volna elég bütykölni, új megoldást pedig felesleges írni, mikor kész megoldások találhatóak másodpercek alatt a neten. Linkeltem is egyet (valójában kettőt) neki, hőbörgött tovább.


Nem mi vagyunk a tanárai. De tőlünk kért segítséget. És mi tapasztalatból tudjuk, hogy programozni úgy tanul meg az ember, ha programozik. És a tanárai is tudják ezt: ezért kapta a feladatot.


És ha tovább gondolkodunk: most valaki megoldja neki a háziját, nem tanul semmit, így a későbbiekben már nagyobb hiányosságai lesznek programozás terén. Végső soron nem jut semmire azzal, hogy ebbe a suliba jár.

2013. okt. 29. 16:34
Hasznos számodra ez a válasz?
 26/80 iostream ***** válasza:
100%
Húha, a kérdező regisztrált egy másik accountot? :D
2013. okt. 29. 16:34
Hasznos számodra ez a válasz?
 27/80 anonim ***** válasza:
0%
látom iostream te aztán egy különösen pofátlan alak vagy az eddigi globálisan vett hozzászólásaid alapján,remélem egyszer lefolysz a kimeneteden és nem kapsz több inputot,hogy itt feleslegesen és utálatos, pimasz módon ugathass és játszd az eszed.megérdemelnéd,hogy se melód,se társad, se jó életed ne legyen!ilyen fészeket nálunk a teamben,úgy billentjük fenékbe,hogy a másik ajtón még csak hangyaként sem mernek visszamotoszkálni.magadba nézhetnél néha és csekkolhatnád az óriási folyamodat a kimeneten,hogy nem e encodolt üzenetet dobsz ki az éterbe a dekódolt helyett mostanság.igazán magadba nézhetnél icurtpicurt,mielőtt jópofáskodsz itt szerte-szét,többnyire teljesen feleslegesen,de inkább romboló módon!
2013. okt. 29. 16:54
Hasznos számodra ez a válasz?
 28/80 anonim ***** válasza:
100%

...én már csak egy dolgot hiányolok tőled, előző: Ha annyira nagy probléma, hogy mi nem írtunk ide a kérdezőnek egy nyamvadt kódot, akkor te miért nem tetted már meg?

Más dolog, hogy valami förtelmesen fogalmazol. Inkább ne erőltesd a magasröptű kifejezéseid, nem állnak jó.

G.

2013. okt. 29. 17:07
Hasznos számodra ez a válasz?
 29/80 anonim ***** válasza:
100%

Azért nem, mert ő a kérdező és saját magát védi...

Atomszánalmas...

2013. okt. 29. 17:11
Hasznos számodra ez a válasz?
 30/80 anonim ***** válasza:
0%

hogy miért nem?

1. a feladat komplikált

2. nem vagyok delphi-s

3. nincs itt az arc,mert már rég kiszállt a beszélgetésből, ha nem vettétek volna észre.


4. ilyen embereknek élből nem raknám ki ide a forráskódot,semmilyen programozási nyelven.tanulják meg maguk,szerezzék be, fejtsék meg,abban még van némi igazság.


5. nem utolsó sorban, meg sehol sem lelhető fel,az ő példájába beillő forráskód a neten. jobb és rosszabb van,meg teljesen gagyi és működésképtelen,meg kismillió vele kapcsolatos kérdés és tanakodás, de az ő egyedi kérésének megfelelő változatban nincs képlet.


6. abszolút finishben,pedig a magam részéről a beszélgetést én is hanyagolom,mert akkora surmók itt egyesek,hogy ilyeneket még fejleszteni is nehéz lenne,nemhogy megteremteni.


további jó szórakozást és okoskodást!

2013. okt. 29. 17:18
Hasznos számodra ez a válasz?
1 2 3 4 5 6 7 8

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!