Newsgroup: it.comp.lang.c
Titolo: disegnare triangolo con *

Ciao
devo fare questo
*
**
***
****
*****
******
*******
********
ma ottengo solo questo :(
*
*
*
*
*
*
*
*
#include <stdio.h>
int main(void)
{
  int i,j,k;
  i=1;
  j=1;
  k=0;
  for(i;i<=8;i++)
  {
     ++k;
     for(j;j<=k;j++)
     {
        printf("*");
     }
     printf("\n");
  }
return 0;
}
help!!
grazie

Ti bastano due sole variabili che controllano due cicli for uno annidato
nell'altro. Ora, essendo un triangolo con cateti di uguale lunghezza, devi
tenere in considerazione per i cicli for che all'aumentare delle righe
aumentano le colonne, in maniera direttamente proporzionale. Quindi?
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Ciao
volevo chiederti una cosa....
tu anche per piccoli programmi scrivi un prototipo in pseudocodice o un 
diagramma di flusso?
Inoltre quando si tratta cicli annidati tipo quello per disegnare 
appunto un triangolo....esiste una qualche sorta d "regola" fondamentale 
che aiuti a scomporre facilmente il problema nel numero di cicli necessari?
potrei usare la variabile i del primo ciclo come condizione per il secondo?
grazie


 potrei usare la variabile i del primo ciclo come condizione per il
secondo?
Assolutamente no, perchè se cambi il suo valore sballi tutto.
Ma sei riuscito a risolvere il problema? Se non ci sei riuscito prova a
disegnare prima un quadrato 8x8, che è più semplice, e poi chiediti cosa
manca per disegnare un triangolo che ha come ipotenusa la diagonale dello
stesso quadrato (e quindi cateti di 8).


 (alcuni utilizzano in questo caso anche r e c)
naturalmente puoi utilizzare anche pippo e topolino, quello che ti pare. i e
j sono convenzionali e per tanto ti consiglio di usare queste convenzioni
(sempre per la leggibilità). «L'utilizzo di 'i' e 'j' per gli indici dei
cicli, 'p' e 'q' per i puntatori e 's' e 't' per le stringhe, è così
frequente che l'utilizzo di nomi lunghi comporta più svantaggi che vantaggi.
[...] I programmatori tendono spesso a usare variabili con nomi lunghi
indipendentemente dal contesto. Questo è un errore: spesso la chiarezza si
consegue con la brevità» ("Programmazione nella pratica", Kernighan & Pike).


#include <stdio.h>
int main(void)
{
    int i;
    for (i=0; i<8; i++) {
        int j;
        for (j=0; j<=i; j++) {



Questo sě che č un suggerimento! ;D


> Questo sě che č un suggerimento! ;D
E' vero, "leggi un libro sul C" č ancora meglio ;-)

ciao
stamattina in uffico l'ho scritto in questo modo e funziona, ho anche 
fatto il contrario hehe....
********
*******
******
*****
****
***
**
*
grazie lo stesso
chissa' quando saro' anche io in gamba come voi......!!!!!!! fra 20 anni 
hehehe


> fra 20 anni hehehe
20 per fare un triangolino??? Sei ridotto maluccio... :-)


Non risolvete agli altri gli esercizi di informatica :(
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

> Non risolvete agli altri gli esercizi di informatica :(
Non chiedete di risolverli.

 Assolutamente no, perchè se cambi il suo valore sballi tutto.
secondo me, si puo' fare:
un ciclo del genere e' lecito
int i;
int j;
for(i=0;i < max; i++){
	for(j=0; j<i; j++){
		//fai quello che devi
	}
}
l'importante e' non modificare il valore di i (a meno di non stare 
MOOOOLTOOO ATTENTI, insomma non cambiare i che e' meglio :-) )
ciao,
Massimo