Newsgroup: it.comp.lang.delphi
Titolo: matrici aiuto che danno!

ho usato tanto le matrici in pascal...utilizzandole allo stesso modo in
delphi nn funziona un bel cavolo...c'è un motivo particolare?



Si', forse stai sbagliando qualcosa.
Posta il codice.
-- 
Andrea Laforgia (
walkie...@libero.it
)
"Usenet is a strange place" [Dennis Ritchie]

 Posta il codice.
vi posto lo zip ke faccio prima
http://digilander.iol.it/hardcoreman/matrice1.zip
c'è anke la unit controllo...con le procedure e le dichiarazioni delle
vavriabili

vi posto lo zip ke faccio prima
Quando chiedi aiuto, devi postare la parte minima di codice
su cui hai problemi.  


 su cui hai problemi.
è ke nn so quale di preciso mi da il problema...ho dubbio su tutto...x' in
pascal metto [i,j] mentre li dopo prove son stato costretto a mettere [j,i]
ma senza un x'...nn me lo spiego

 Posta il codice.
a grande richiesta ho selezionato le parti di codici...:
*************************************************
matrice1:array[1..12,1..16] of integer;
matrice2:array[1..7,1..7] of integer;
procedure TForm1.btCrea1Click(Sender: TObject);
var
i,j:integer;
begin
for i:=4 to 9 do
    for j:=4 to 13 do
          matrice1[i,j]:=i*j;
btriempi1.OnClick(self);
end;
procedure TForm1.btRiempi1Click(Sender: TObject);
var
i,j:integer;
begin
for i:=1 to 12 do
    for j:=1 to 16 do
        griglia1.cells[i,j]:=IntToStr(matrice1[i,j]);
end;
procedure creaMatrice(riga:integer;colonna:integer);
var
i,j,ii,jj:integer;
begin
ii:=riga-3;
jj:=colonna-3;
for i:=1 to 7 do
    begin
    for j:=1 to 7 do
        begin
        matrice2[i,j]:=matrice1[ii,jj];
        ii:=ii+1;
        end;
    jj:=jj+1;
    end;
end;
************************************************************
lo scopo č creare una matrice2 7x7 contenente parte della matrice1
mantenendo nella posizione 4-4 della matrice2 la posizione selezionata della
matrice1.
della matrice1 si possono selezionare le caselle dalle 4-4 alle 9-13 poichč
sarebbe di 6 righe x 10 colonne...e ho scelto di ingrandirla per non avere
problemi con gli angoli.
per kiarimenti postate.

Non ho ben capito. Devi estrarre 7x7 celle dalla matrice1 ed inserirle 
nella matrice2 partendo dalla posizione (4, 4)?
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 wrote in message
397ddc59ac127eafb54...@mygate.mailgate.org...


Help plz!!!


Un inciso: scrivere in italiano aiuta :)
Ciaotutti,
*

 Help plz!!!
Chiaro come la notte... Facciamo una cosa, posta la versione grafica, ad
esempio:
matrice1:
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16
matrice2:
21 22 23 24
25 26 27 28
29 30 31 32
33 34 35 36
dopo l'esecuzione, matrice2:
21 22 23 24
25 01 02 03
29 05 06 07
33 09 10 11
Non ho assolutamente idea se sia cio' che avevi in mente o non c'entri
nulla, ma se posti una cosa del genere penso che sia piu' chiaro per tutti
cio' che  vuoi ottenere.
Ciaotutti,
*

appena torno dal corso oggi vi farņ questo regalo...


 appena torno dal corso oggi vi farò questo regalo...
Facci il regalo di imparare a quotare, prima.
Hai riportato 40 righe di testo per scriverne 1.
E non dire "che palle", in altri ng ti avrebbero scritto di peggio...
--
Jax

 Jax
ma nn si può cambiare font al messaggio?

 ma nn si può cambiare font al messaggio?
Evita le abbreviazioni, non e' un SMS, hai infiniti caratteri a
disposizione; a molti (primo!) danno fastidio, rendono difficile la lettura
e in definitiva fanno piu' danno che guadagno.
Quasi accettabili le versioni "TLA" di parole significativamente lunghe
("comunque", ad esempio, quando viene abbreviato in "cmq" bene o male (piu'
male che bene) e' accettabile), ma le "k" per "ch", le "x'"  per "perche'"
(a meno che tu non sia un ragioniere o abbia altrimenti fatto stenografia,
ma in quel caso devi domostrarlo :P) e i "nn" non lo sono.
A parte il corso accelerato di Netiquette... Che c'entra il font?
Ciaotutti,
*

 squallido...e le faccine vengono malissimo '.'
beato te, che hai tempo x pensare a queste cose estremamente importanti
Bye
AS

col permesso dei cavalieri della netiquette mi permetterei di proporre lo
schema delle matrici come richiesto...
se non da fastidio ho scelto un mio metodo per rappresentarle visto ke erano
abbastanza grandi...se poi al sig Alberto & C. non piacciono non so cosa
farci...
avendo la:
matrice1
----01--02--03--04--05--06--07--08--09--10--11--12--13--14--15--16--
1   |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
2   |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
3   |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
4   |  0 -- 0 -- 0-- 1 -- 2 -- 3 -- 4 -- 5 -- 6 -- 7 -- 8 -- 9 --10-- 0 --
0 -- 0 --
5   |  0 -- 0 -- 0--11--12--13--14--15--16--17--18--19--20-- 0 -- 0 -- 0 --
6   |  0 -- 0 -- 0--21--22--23--24--25--26--27--28--29--30-- 0 -- 0 -- 0 --
7   |  0 -- 0 -- 0--31--32--33--34--35--36--37--38--39--40-- 0 -- 0 -- 0 --
8   |  0 -- 0 -- 0--41--42--43--44--45--46--47--48--49--50-- 0 -- 0 -- 0 --
9   |  0 -- 0 -- 0--51--52--53--54--55--56--57--58--59--60-- 0 -- 0 -- 0 --
10 |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
11 |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
12 |  0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
0 -- 0 --
la matrice2 se seleziono casella 4-4 della matrice1 sarà:
----01--02--03--04--05--06--07--
1   | 0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 --
2   | 0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 --
3   | 0 -- 0 -- 0-- 0 -- 0 -- 0 -- 0 --
4   | 0 -- 0 -- 0-- 1 -- 2 -- 3 -- 0 --
5   | 0 -- 0 -- 0--11--12--13--14--
6   | 0 -- 0 -- 0--21--22--23--24--
7   | 0 -- 0 -- 0--31--32--33--34--
la matrice2 se seleziono casella 8(riga)-7(colonna) della matrice1 sarà:
-----01--02--03--04--05--06--07--
1   | 11--12--13--14--15--16--17--
2   | 21--22--23--24--25--26--27--
3   | 31--32--33--34--35--36--37--
4   | 41--42--43--44--45--46--47--
5   | 51--52--53--54--55--56--57--
6   |  0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
7   |  0 -- 0 -- 0 -- 0 -- 0 -- 0 -- 0 --
etc...
ricordo i limiti di selezione della matrice1 sono delimitati da sove vedete
valori diversi da 0

NOOOOOOOOOOOOOOOOOOO
alla matrice1 sono andate a capo le prime 3 righe...ore e ore di
lavoro...sigh...

 lavoro...sigh...
Capita.
Comunque:
1) al cavaliere qui presente girano un po' i coglioni, non foss'altro che io sto lavorando
eppure cerco di rispondere ad altra gente, però questa altra gente (se non capisci la fine
ironia, *tu*) non ha rispetto per me (non perché io sia chissà quale guru, ma solo per
quello che ho detto).
2) controlla meglio il tuo codice. Fai casino con j e i. Ma, soprattutto, vai in
Project|Options / Compiler e abilita il Range Check: tutti gli errori che ti salteranno
fuori sono perché sbagli a riferirti ad un elemento degli array.
3) per il motivo n°1, il cavaliere potrebbe darti la soluzione al tuo problema, ma è
sicuro che sua maestà possa farcela tranquillamente da solo.
Su, impegnati invece di cambiare i font al tuo newsreader.
--
Jax

 Su, impegnati invece di cambiare i font al tuo newsreader.
nn ti preoccupare...appena risolvo ti farò i complimenti...
ora devo reinstallare delphi...dammi il tempo

devo spedire in carta bollata? :| ...cmq č che sono abituato cosě...
Signori, eccoci di fronte alla nuova generazione SMS:
ignoranti, illetterati  e maleducati.
PLONK.
-- 
Ore 18.30: premo invio.

Ore 18.30: premo invio.
Questa frase mi dice qualcosa, ma puo' essere un falso contatto :)
Da dove viene fuori?
Ciaotutti,
*



Dal film PI :)

ecco il codice esatto caro jax:
procedure creaMatrice(rig:integer;col:integer);
var
i,j,ri,co:integer;
begin
ri:=0;
for i:=rig-3 to rig+3 do
    begin
    ri:=ri+1;
    co:=1;
    for j:=col-3 to col+3 do
        begin
        matrice2[ri,co]:=matrice1[i,j];
        co:=co+1;
        end;
    end;
end;
ciao

 ecco il codice esatto caro jax:
Carissimo leprotto, se il codice che mi hai postato è l'unico che hai modificato...
l'importante è che tu ne sia convinto.
Potrei discuterne civilmente con te, ma sinceramente credo di aver perso anche troppo
tempo con una persona che non sa ascoltare.
*Per me* quel codice è sbagliato: la matrice2 risultante non è certo un "settore" della
matrice1.
Te ne accorgeresti abilitando il Range Checking e facendo una bella Build, ma sei troppo
figo per poter ascoltare i consigli degli altri.
Se poi per te va bene, va bene a tutti, basta che non mi stressi più l'anima.
Ciao e buona programmazione (auguri professore...)
--
Jax passa e chiude
PS: Hai perso un'ottima occasione per confrontarti con chi ne sa di più di te (e non sto
parlando solo di me). Queste occasioni nella vita non capitano spesso.

 Ciao e buona programmazione (auguri professore...)
sicuramente

 figo per poter ascoltare i consigli degli altri.
cmq visto che ti 6 fissato con sto *range checking* ti comunico che non
restituisce alcun errore anche attivandolo...se non ci credi ancora fatti
tuoi.


Non e' una cosa che faccio spesso ma...
*PLONK*
Ciaotutti,
*

 Dal film PI :)
OK, era un falso contatto :)
Ciaotutti,
*

 ma in quel caso devi domostrarlo :P) e i "nn" non lo sono.
Perchč? che c'hanno i ragionieri?
Il "non" in stenografia non si scrive cosě (almeno mi pare)... mi piacerebbe
cambiare font cosě stenografo tutto nei messaggi ;-)
quando ero a scuola la profe diceva che la stenografia serve a velocizzare
la scrittura ed a comprimere il contenuto dei messaggi. Io le ho risposto
che battendo a dieci dita e poi usando il pkzip ottenevo lo stesso. Lasciamo
perdere il resto.
Scherzi a parte, che ne dite di interrompere qui questo diverbio? sta
diventando molto OT.
Ciao
Gianluca (il Ragioniere Programmatore).


Mah, io il leprotto l'ho plonkato stamattina, poi vedi tu...
Ciaotutti,
*