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
 11/80 anonim ***** válasza:
100%

Öcsém, ekkora hülyét...

Pont ez a lényeg, te nagyon sötét, hogy te szenvedj vele, hogy tanulj belőle.

Tudod úgy senkiből nem lett még programozó, hogy mindig más csinálta meg a feladatait...

Mondjuk belőled se így, se úgy nem lesz...

2013. okt. 28. 14:31
Hasznos számodra ez a válasz?
 12/80 A kérdező kommentje:
Na erre ment ki a játék hülyegyerekek. Nem akarja itt senki sem megoldani a feladatot, hanem csak baszogatni akarja mindenki a másikat, ha valaki indít egy új kérdést, mert ez egy újabb okot ad és formál arra,hogy egymás között beszélgetések és közben ellentétek alakuljanak ki a válaszadók között. Lassan már nem a feladatról beszélgetnénk itt, hanem a kormány tevékenységiről.Mentek ti a jó büdös francba, főleg az utolsó kettő hozzáoszlónak üzenem. Irhattok itt akármit innentől választ úgysem fogtok kapni. A többi rendes hozzászólónak üzenem, hogy jobban teszitek, ha kiléptek ti is mert ennek így ebben a formában nulla értelme van és ellentmondás,nincs megoldás, nemcsak számomra, hanem másoknak való segítségként sem fog megmutatkozni. Nekem ennyi gagyiság elég is volt mára és úgy érzem ez a helyzet csak rosszabb lesz és nem fog megváltozni úgysem.
2013. okt. 28. 14:32
 13/80 anonim ***** válasza:
80%

Egyetértek io-val és G-vel. Programozni úgy tanulsz meg, ha TE programozol. Ha TE jössz rá a megoldásra. Épp ezért kaptad a házifeladatot a tanárodtól. Hogy megoldd.


Persze, van olyan, hogy kell egy kis lökés, egy tipp, merre indulj el. Ezt meg is kaptad. De ezen akkor el is kéne indulni, nem várni a sültcsirkét, hogy berepüljön, mert így nem tanulsz SEMMIT.


Egyébként meg nem bacol ki senkivel, ha nem írod ide a megoldást, mert Google egyből kidobja az elméletet, példakóddal együtt, annak, aki tud keresni:


[link]


Javaslom, csak az első oldalát olvasd el és próbáld meg TE megírni a programot!

2013. okt. 28. 14:32
Hasznos számodra ez a válasz?
 14/80 A kérdező kommentje:
Majd szépen mindenki megírja ki-ki a maga módján, ahogy akarja, de a megoldást senki sem fogja megtudni, ahogy eddig sem tudta meg senki publikusan. Ezaz, mindenki menjen és tanulja meg! Egyetértek minden válaszadóval. Most pedig mindenki húzzon a faxba és végezze a dolgát, ne a napot lopja a gyakorin!. Szép napot programozó zsenikék!!!
2013. okt. 28. 14:39
 15/80 anonim ***** válasza:
87%

Te komolyan azon vagy felháborodva, hogy meg kell dolgozni valamiért??? :D :D :D

Öcsém, te aztán egy szaros minimálbéres gyári melósnál biztos nem fogod többre vinni az életben...

2013. okt. 28. 14:44
Hasznos számodra ez a válasz?
 16/80 anonim ***** válasza:
74%

"de a megoldást senki sem fogja megtudni, ahogy eddig sem tudta meg senki publikusan"


Most linkeltem egy publikus megoldást te szerencsétlen. :D


Vannak emberek, akiken nem lehet segíteni.


Egyszer majd rájössz, hogy a te érdeked lett volna leülni a seggedre gondolkozni és programozni, felháborodás helyett.

2013. okt. 28. 14:44
Hasznos számodra ez a válasz?
 17/80 iostream ***** válasza:
89%
Dehát én már tudom a megoldást :(
2013. okt. 28. 14:52
Hasznos számodra ez a válasz?
 18/80 anonim ***** válasza:
81%

"Na erre ment ki a játék hülyegyerekek. Nem akarja itt senki sem megoldani a feladatot"


valóban nem, minek akarnám?:D leírtam, hogy hogy csináld

ha nem megy, vissza az alapokhoz


amúgy meg képzelheted, ha leírtam, hogyan kell csinálni, akkor nem nagyon van szükségem semmiféle megoldásra, meg a többieknek sem

egyedül neked

2013. okt. 28. 15:10
Hasznos számodra ez a válasz?
 19/80 zsomkovacs ***** válasza:
87%

Na jó, ezek után már nekem sincs kedvem segíteni. Majd megírod te magadnak, úgyis olyan okos vagy. Velem sem szúrsz ki, én meg tudom írni. Amúgy én is egyetértek a többiekkel, jobban megértenéd, ha te írnád meg. De voltam olyan jóhiszemű, hogy feltételeztem, hogy legalább utánanézel azoknak a dolgoknak, amiket írtam, és utána esetleg legalább megérted a kódot...


Amúgy a Wikipedián is fent van link legalább 3 implementációra. A Google meg egy pillanat alatt talál Delphi implementációt is.


Az meg komolyan szánalmas, ahogy mindenkit leszólsz. iostream-nek például a kisujjába több programozási szakértelem szorult, mint beléd...

2013. okt. 28. 17:33
Hasznos számodra ez a válasz?
 20/80 anonim ***** válasza:
2013. okt. 28. 21:31
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!