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
 51/80 anonim ***** válasza:
túlspilázod
2013. okt. 29. 21:27
Hasznos számodra ez a válasz?
 52/80 anonim ***** válasza:
túlspilázás??? Nekem egyenesen OVERFLOW-ot dobott hosszú percekig.Öcsém te nem vagy kispályás,akárki is vagy kérdező,vagy a válaszoló.Akkora face vagy bameg,hihetetlen.Hol lőtted ezt a sok marhaságot,melyik vidéki bálon?? :-))
2013. okt. 29. 21:32
Hasznos számodra ez a válasz?
 53/80 anonim ***** válasza:
mit szedsz én is kérek
2013. okt. 29. 21:40
Hasznos számodra ez a válasz?
 54/80 zsomkovacs ***** válasza:
100%
Ó, megvan a probléma megoldása. Figyelmesen elolvastam a kérdést. "Azt szeretném megoldani, HA NEM TÚL KOMPLIKÁLT". De, túl komplikált. Sajnáljuk. A világon senki nem tudja ezt megoldani, a linkelt pár száz megoldás pedig mind kamu. Legközelebb könnyebb feladatot válassz.
2013. okt. 29. 21:41
Hasznos számodra ez a válasz?
 55/80 anonim ***** válasza:
0%
a legszomorúbb az,hogy amit írt abban még igazság is van,nem is olyan nevetséges.az egyik arra mutat rá,hogy lehet,hogy ő is kíváncsian várja már valakitől a megoldást,más oldalról pedig arra,hogyha jól belegondolunk, valóban ez egy nem igazán publikus téma,hiszen akkor már kis millióan teleszemetelték volna vele akár itt,akár máshol a netet.ahogy néztem mindenütt csak kérdések vannak hasonló dolgokkal kapcsolatban ,vannak erre utaló megoldások is,meg példaprogramok is itt-ott,de pont erre utalóan,senki nem készített kódot igazán.ez a dolog nagyon sok mindennek az alapja és kiindulópontja.komoly interpreterek és compilerek is használják ezt az algoritmust.még a legkezdetlegesebb parancssor paraméterek működése is ilyen történetekből alakult ki és működik akár mai napig is.igazából, hogy kinek mi érdeke fűződne hozzá,hogy ezt értelmesen kivesézze,olyan tényleg nem sűrűn van,mert sokan mai napig ennek függvényében keresik a kenyerüket.én csak örülök neki,hogy legalább valaki viccesebbre vette a figurát,de a megoldást szerintem valljátok be őszintén,többen is szeretnétek végre valakitől látni.igen furi egy emberkék vagytok,ha benneteket nem izgat ez a kérdés és nem láttok rá a lényegére,ami nemcsak nektek,hanem másoknak is jó lehet,vagy érdeke lehet a fejlődéshez.na mindegy,várom,vagy csak várhatom a csodát.
2013. okt. 29. 21:50
Hasznos számodra ez a válasz?
 56/80 anonim ***** válasza:

#55:


"vannak erre utaló megoldások is,meg példaprogramok is itt-ott,de pont erre utalóan,senki nem készített kódot igazán"


A 2. oldalon linkeltem egy elméleti magyarázatot kettő darab példakóddal is. Utánam is linkeltek még megoldást. Miben más ez a kérdésben szereplő konkrét eset ezektől? Írd le légy oly' szíves.


"de a megoldást szerintem valljátok be őszintén,többen is szeretnétek végre valakitől látni"


Az a bibi, hogy (1) mi látjuk a konkrét megoldást, csak te és a kérdező nem, (2) meg tudjuk írni az elmélet alapján mi magunk is.

2013. okt. 29. 22:01
Hasznos számodra ez a válasz?
 57/80 anonim ***** válasza:
0%
zsomkovács beszélsz te is itt marhaságot,te sem látod az erdőtől a fát,már képzelődsz te is,mert azon bosszankodsz,hogy vannak nálad sokkal tudatlanabb,vagy gyengébb képességű emberkék itt és miért is fűződne érdeked hozzá,hogy tényleges segítséget adj nekik.amit előbb belinkeltél az jó út de még mindig ne a forráskód.aki pedig feldobta a témát,az meg tutira rég nincs itt,mert biztosan neki is lett volna ehhez hozászolása és biztos nem anonym módon ahhoz,ami itt zajlik.tényleg igaza van a nevettetőnek,hogy itt magunkon kísérletezünk már egy jó ideje és saját magunkat szívatjuk itt.megoldás tutira van,mert annyira senki sem hüle itt,csak lustaságból, idő hiányában,utálatból,szívatásból,vagy teljesen mindegy, milyen okból kifolyólag,csak az a lényeg,hogy az istenért sem akar megszületni,szerintem mondhatom,hogy sokunk sajnálatára.ez itt az igazán nagy baj ebben a kérdéskörben.
2013. okt. 29. 22:03
Hasznos számodra ez a válasz?
 58/80 zsomkovacs ***** válasza:

Nesze, b+, forráskód. Kommentekkel. Nem Delphiben. Ha az eddig leírtakból és ebből együtt nem tudjátok megírni, a ti bajotok. Még én vagyok lehülyézve, amiért segíteni próbálok... Amúgy a Google rengeteg forráskódot kiad...


[link]


A @-ot írjátok vissza a-ra, azért van így, mert amúgy nem tudtam elküldeni.

2013. okt. 29. 22:09
Hasznos számodra ez a válasz?
 59/80 anonim ***** válasza:
akkor írja meg valaki felőlem binárisan is idebiggyesztheti csak történjem már valami és ne csak elméletben,hanem gyakorlatban is.ha az egész világon mindenki csak elmélkedne bármiről,akkor még mindig ott rohadnánk és "csónakáznánk valahol noé bárkájában",vagy az összes alma a fejünkre hullott volna és ránk dölt volna a fa, vagy a kigyó zabált volna fel bennünket unalmában,vagy maga éva.elnézést a kifejezésért,de baaszátok már meg,nyomjon már ide valaki,vagy valami egy értelmes kódot,mert ez kész röhej,pont a gyakori kérdéseken, ami pont azért lett kitalálva, hogy segítséget nyújtson,hogy valaki feldob egy témát és nincs rá konkrét megoldás.szerintem már ez a szánalmas és szégyenletes dolog,nem az ami,vagy akire éppen ti gondoltok,vagy rámondjátok,hogy szánalmas éppen az adott szövegelés mentén.
2013. okt. 29. 22:14
Hasznos számodra ez a válasz?
 60/80 zsomkovacs ***** válasza:
Jó, én feladom. Ott a kód egy kommenttel feljebb. Ja, hogy ahhoz olvasni is kéne, nem csak a pofádat jártatni a nagy semmire, amit eddig felmutattál. Sok sikert az életben ezzel a hozzáállással, büszke lehetsz magadra.
2013. okt. 29. 22:19
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!