Newsgroup: it.comp.lang.c++
Titolo: urgenzaaaa!!!!!

Scusatemi se insisto ma ho veramente bisogno di aiuto: conosco le coordinate
dei 4 vertici di un rettangolo di partenza. Devo fare un processo ricorsivo
che ogni volta mi divida il rettangolo in 4 parti uguali, e, per ogni
rettangolo, mi dica le coordinate e me lo ridivida a sua volta in 4 etc.
fino ad un valore minimo di area del rettangolo, che fisso io. Se qualcuno
mi può aiutare avrà la mia riconoscenza!!!!! Graziee!!!!
Alessandra  
ales...@tin.it

Alessandra  
ales...@tin.it
Alessandra, il tuo argomento non e' attinente al topic di questo
gruppo, spero te ne renderai conto. Nonostante questo c'e' qualcuno
che ti ha risposto al primo messaggio. Quando si spedisce un
messaggio, generalmente si leggono anche le risposte...
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------
Dovro' prendere lezioni di Internet, 
se non sai di Internet non ti considera nessuno 
(Carmen di Pietro) 
-----------------------------------------------

Secondo me la cosa più difficcile è l'algoritmo, non tanto il linguaggio
utilizzato per programmarlo.
Io lo affronterei cosi:
creo una struttura

Scusa, ma mi si è inviato senza che ancora completassi di scriverlo

Secondo me la cosa più difficcile è l'algoritmo,
Sei davvero sicuro che l'algoritmo sia cosi' complicato ?
A me onestamente non sembra ...
--
Andrea Laforgia (ICQ 87230455)
"I know every element of C" - Ioannis Vranos

 chiede, ma chi risponde ... :(
Beh, visto che questo gruppo non e' moderato e' giusto che ciascuno si
regoli. In fondo se la domanda e' in argomento magari l'autore non
impara niente, ma qualcun'altro si...
Ciao,
Nicola

 ha scritto nel messaggio
news:39B4A1CC...@divalsim.it...

Ma siete tutti cosě simpatici in questo gruppo? Io, femmina ebbene sě, non
voglio offendere nessuno, come invece ha fatto qualcun'altro. Mi sono
sentita dare della ragazza scema che non č capace di fare niente e chiede la
pappa pronta. Che pregiudizi!! Io ho iniziato da poco a studiare il C++ e
sto facendo la mia tesi in Ingegneria su un argomento per il quale č
richiesta la scrittura di un programma in C++ e quindi sto facendo una
fatica bestiale. Lo sto studiando e sto andando avanti con il mio programma,
e ogni tanto mi capita di incepparmi in qualche punto. Non mi sembra una
cosa cosě brutale chiedere aiuto a qualcuno che ne sa piů di me e, comunque,
chiedevo un'idea per come creare un processo ricorsivo!! Comunque sono
rimasta delusa dalle persone che hanno scritto questi messaggi perchč hanno
dimostrato di essere proprio "piccoli". Prima di esprimere un giudizio su
qualcosa bisognerebbe informarsi su quella cosa!! Ciao, Alessandra


Certo, non c'č nulla di male a chiedere aiuto a qualcuno piů esperto.
Ma non hai pensato di rivolgerti al tuo professore?
Lui, a differenza delle persone di questo newsgroup, č pagato per aiutarti.
Riguardo al tuo problema, pensa prima come scrivere una funzione che divida un rettangolo
in quattro parti.
Scrivi anche un programmino che lo faccia.
Manlio Perillo

[CUT]
Femmina, guarda che ti ha dato una soluzione Andrea Laforgia già il 31
agosto... sveglia!!!
Luc.

"Luc" <TOGL...@nip1.it-TOGLI> ha scritto nel messaggio
news:4vj9rs0avol78mq87...@4ax.com...

Guarda che io Andrea Laforgia lo avevo già ringraziato scusandomi per non
aver visto subito la sua risposta! Ale

 ha scritto nel messaggio
news:8p2fk4$497$1...@nslave1.tin.it...

Grazie per esserti espresso con tale gentilezza. Ciao, Alessandra

informarsi su quella cosa!! Ciao, Alessandra
Hai ragione, almeno per il punto in cui affermi che, per giudicare
"qualcosa", hai bisogno di conoscere quel "qualcosa", esattamente
cosi' come per giudicare "qualcuno", hai bisogno di conoscere quel
"qualcuno". In questo gruppo ci sono persone veramente serie ed
esperte di C++, per cui non trarre giudizi frettolosi e, se hai
problemi con il linguaggio, ti invito a restare.
Io sono fortemente convinto che la frequenza dei gruppi di discussione
sia la forma migliore di apprendimento tecnico che esista su internet,
e di perfezionamento delle proprie conoscenze.
Ci vorrebbe un po' di comprensione da tutte e due le parti ;)
Rimani qui dentro, da parte mia saro' lieto di aiutarti a risolvere i
tuoi problemi ;)


Lui, a differenza delle persone di questo newsgroup, č pagato per aiutarti.
Ehm... lui e' pagato per *insegnare*, che non e' affatto la stessa
cosa ;))


aver visto subito la sua risposta! Ale
Ok, ragazzi, adesso basta ;)


 cosa ;))
Non proprio.  Insegnare E' ANCHE Rispondere alle domande altrui ed
aiutare a capire quello che si e' spiegato.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 Andrea Laforgia (ICQ 87230455)
Devo ringraziare Andrea Laforgia, perchè mi sembra una persona molto
intelligente e sensibile. E' vero sto facendo molta fatica e comunque ricevo
un grande aiuto anche dal mio docente è che ogni tanto non mi va di
chiamarlo ogni 5 minuti. Pensavo di chiedere solo uno spunto nel newsgroup e
tu mi sembra abbia capito le mie esigenze. Quindi continuerò a frequentare
questo posto di "pazzi" , comunque tutti più esperti di me nella
programmazione! Ciao, Ale.

aiutare a capire quello che si e' spiegato.
Peccato che molti professori non conoscano neanche loro la materia che
insegnano ;)



Figurati, sono uno studente anche io.
Comunque se poi riuscita a risolvere?
Ti do qualche spunto.
Innanzitutto nel programma si fa riferimento a due concetti, un punto nel piano ed un rettangolo.
Buona norma č implementarli subito in C++.
un punto č banale
(ho usato float, ma se ne puň fare un template)
struct Punto
{
   float x, y;
   Punto(float xx, float yy)
   : x(xx), y(yy)
   {  }
};
std::ostream& operator<<(std::ostream& os, const Punto& p);
Per un rettangolo la prima idea potrebbe essere qualla di usare 4 Punti per i vertici, tuttavia
basta specificare le coordinate di due vertici opposti.
       D                         C
       --------------------
       |                            |
       |                            |
       |                            |
       --------------------
      A                          B
class Rettangolo
{
  private:
    Punto A_, C_;
  public:
    Rettangolo(Punto verticeA, Punto verticeC)
    : A_(verticeA), C_(verticeC)
    {  }
    // il terzo argomento non č usato, serve solo per distinguere i costruttori
    Rettangolo(Punto verticeB, Punto verticeD, int)
    : A_(verticeD.x, verticeB.y), C_(verticeB.x, verticeD.y)
    {  }
    Punto A() const { return A_; }
    Punto B() const  { return Punto(C_.x, A_.y); }
    Punto C() const { //... }
    Punto D() const { //... }
    float area() const { //... }
};
std::ostream& operator<<(std::ostream& os, const Rettangolo& q);
A questo punto hai tutto l'occorrente per procedere.
Ho implementato anche l'output in modo da avere un codice piů comodo ed elegante.
Eccoti lo schema della funzione
Lo stream č passato come argomento, cosě si puň decidere dove scrivere i risultati (schermo, file)
void dividi(Rettangolo q, std::ostream& out = std::cout)
{
  // calcola le coordinate del centro del rettangolo
  Punto centro( //...);
  Rettangolo A(q.A(), centro);
  Rettangolo B(q.B(), centro, 0);
  Rettangolo C(//...);
  Rettangolo D(//...);
  // ...
}
A questo punto passare alla ricorsione č banale.
Se hai problemi significa che la ricorsione non ti č familiare.
In tal caso fatti suggerire dal tuo professore dei testi in cui č trattata.
Ciao  Manlio Perillo