Kezdőoldal » Számítástechnika » Programozás » Karakterek beszúrása probléma...

Karakterek beszúrása probléma delphiben, van rá megoldás?

Figyelt kérdés

A segítségeteket szeretném kérni,mert elakadtam benne. Olyan progit kell írnom,ami két db számérték beírásakor, azaz 122 esetén egy "-" jelet ír a textboxba egy enter lenyomása után, 123 esetén pedig "+" jelet és ezt ismételgeti így a végtelenségbe, ebben a formában pl:


122-123+122-123+122-123+122-123+ stb...

vagy

123+122-123+122-123+122-123+122-123+ stb...


3 számjegyig sikerült megoldanom,de aztán sajnos rendesen elakadtam és bele is fáradtam sajnos.Azt feltételezem,hogy biztos nem lehet azért ördöngösség megoldani,de jelenleg fogalmam nincs miképpen lehetséges és mit hagytam figyelmen kívül.Az én megoldásom biztosan pocsék, ezért szeretném kérni hogy segítsetek benne,mert elfogyott a türelmem vele szórakozni.:))


Előre is köszi!


Az eddigi próbálkozásom:


unit karakterbeszur;


interface


uses

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

Dialogs, StdCtrls;


type

TForm1 = class(TForm)

Edit1: TEdit;

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;


var

Form1: TForm1;

var s:string;

implementation


{$R *.dfm}


function RepeatString(const s: string; count: cardinal): string;

var i:integer;

begin

for i := 1 to count do

Result := Result + s;

end;


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

var x:integer;

var y:integer;

begin

if key=#13 then begin


x:=length(edit1.text)+2;

y:=length(edit1.text)-2;


{x:=edit1.SelStart+2;

y:=edit1.selstart-2;}


if pos('123',edit1.text)>0 then begin

edit1.selText:=repeatstring('+',1);

s:=edit1.text;

delete(s,x+y,1);

edit1.Text:=s;

edit1.SelStart:=x-y div 4;

end;


if pos('122',edit1.text)>0 then begin

edit1.selText:=repeatstring('-',1);

s:=edit1.text;

delete(s,x-1,1);

edit1.Text:=s;

edit1.SelStart:=y+x * 4;

end;


end;

end;



2015. szept. 30. 15:32
 81/95 anonim ***** válasza:
Iskolai feladat szaga van.
2015. okt. 2. 22:28
Hasznos számodra ez a válasz?
 82/95 anonim ***** válasza:
Szerintem pedig tök hülyeségeket beszéltek. 'Érint' 'Kattint'. Attól még hogy könnyebbé tették a világot és a számítástechnika convert ámítástechnika lett, attól még kell gépelni és értelmezni bizonyos műveleteket, szövegeket, parancsokat, stb..., gondolj csak az excelre,vagy wordre ott mit kattintasz és mit érintesz, ha nem éppen egy billentyűt nyomsz le, vagy vizuális karaktert egy telefonon,hogy megjelenjen egy szöveg a beírómezőben és a chat-ről nem is beszélve, sőt itt a gyakori ablak is le van kezelve, mert ha csúnya szövegeket gépelsz be meg sem engedi megjeleníteni,csak akkor ha össze-vissza trükközöl és kijátszod a rendszert.Nem értek veled egyet, hogy felesleges a billentyűzet és minden bevitelre szolgáló eszköz. Érdekes lenne, ha pl egy "A" karaktert, gombot pl nevetéssel, vagy egy "B" karaktert köhögéssel, vagy egy "C" karaktert, sírással lehetne bevinni a gépbe. Kicsit el vagytok feküdve ebben a témában azt hiszem, de rendesen :-(
2015. okt. 2. 22:36
Hasznos számodra ez a válasz?
 83/95 anonim ***** válasza:

Az lehet hogy "iskolai feladat szaga van" de idézem a kérdezőt


")) Amikor én még elkezdtem basicezni,akkor javából ment még a TV Basic is.Az volt régen meg a kukoricaszüret.:))"


Szerinted milyen iskolába kellene ez neki,az élet iskolájába,vagy a gyerekét tanítja pascalozni éppen,mikor még ő sem vágja témát annyira?? :-D

2015. okt. 2. 22:49
Hasznos számodra ez a válasz?
 84/95 anonim ***** válasza:

Ha nem feladat a középpont hanem a végeredmény akkor ezt a feladatot nem így oldják meg mert 2 szám lehet csak.


1.) Minek gépeljen már az ember, ha felfele nyilat nyomsz beíródik a 123, lefele nyílnál pedig 122.


2.) xxxyyyxxxy, x cseréli 123-ra, y cseréli 122-re.

2015. okt. 2. 23:02
Hasznos számodra ez a válasz?
 85/95 anonim ***** válasza:
lokottek vagytok:DD de igaz.
2015. okt. 2. 23:05
Hasznos számodra ez a válasz?
 86/95 anonim ***** válasza:
Megmondom nektek a tutit,,, ha beírja 123, akkor Juliska szét teszi a lábát és kinyílik a kiskapu, ha pedig éppen 122-öt akkor összezárja a combjait, de fokozom... be-ki-be-ki-be-ki szexgép folyamatra is ideális.Normál szemszögből nézve akárhányszor beír valamit bekapcsol,vagy kikapcsol egy folyamatot ezzel.Erre is jó például, de ezer féle más dologra is alkalmazható egy ilyen "marhaság". Mindazon felül elképzelni is nehéz hogy csak arra kellett neki, hogy lehet kiírni egy plusz jelet, vagy egy mínusz jelet egy beírómezőben,mert ez nemhogy iskola, de inkább bölcsődés szintet üt meg.
2015. okt. 2. 23:16
Hasznos számodra ez a válasz?
 87/95 anonim ***** válasza:

SimkoL, ez Delphiben, hogy néz ki? (x és y cserélése).


std::string s = "xyyxyxxyx";


for (std::string::size_type found; (found = s.find_first_of("xy")) != std::string::npos;)

{

switch (s[found])

{

case 'x':

s.replace(found, 1, "123+");

break;

case 'y':

s.replace(found, 1, "122-");

break;

}

}

2015. okt. 2. 23:22
Hasznos számodra ez a válasz?
 88/95 anonim ***** válasza:

Egyem a csöpp kis okos fejeteket! :D de mondok nektek még egy ennél is jobbat és ez lesz a következő feladat.


1. Kerüljön úgy 123 a beírómezőbe, hogy nem a vágólapról, nem a billentyűzetről, hanem egy random generált videokártya órajeléből választja ki a gép rekurzív kereséssel. Addig keres milliónyi szám közül, amíg 123-at, vagy 122-öt nem talál.


2. Majd automatikusan minden bevitel nélkül rögtönözzön sztochasztikusan egy entert utána


3. Írja ki a végeredményt ugyanoda a beírómezőbe és küldje ki az északi-sark irányába, vagy a déli-sark irányába, a pólusnak megfelelően természetesen, egy repsávra AM adásmódba, ami 122.000 és 123.000 MHz-en üzemel, mindezt egy 122 és 123 Hz-es és az adott értékek körfrekis hangjelével ismételgetve az éterben.


Na elég testhezálló feladat?

2015. okt. 2. 23:39
Hasznos számodra ez a válasz?
 89/95 anonim ***** válasza:

"random generált videokártya"


Akkor ezért adnak ki ennyi videokártyát.

2015. okt. 2. 23:44
Hasznos számodra ez a válasz?
 90/95 anonim ***** válasza:

Hihetetlen vannak akik figyelnek. :))


"random" generált jelet,a videókártya órajeléből.

2015. okt. 2. 23:49
Hasznos számodra ez a válasz?

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!