Antes que nada un par de observaciones:
* la función main es de tipo int, cosas del estándar del C/C++ y así hay que declararla, con su correspondiente return.
* las instrucciones, tipo for, if, else, etc cuyo cuerpo se reduzca a una sola instrucción no necesitan de llaves. Lo único que consigues con eso es enfarragar el código.
* pon un poco más de cuidado en la indentación o sangrado.
Supongo que querías una salida como esta:
Cita:
Introduce la altura del triangulo : 10
Introduce el caracter a pintar: *
Estara hueco?:
0- No
1- Si
0
*
**
***
****
*****
******
*******
********
*********
**********
*********
********
*******
******
*****
****
***
**
*
Código C++:
Ver original#include <stdio.h>
int pintartriangulo(){
int opcion=0;
return opcion;
}
int main(){
int n, op1, i, j;
char c;
printf("\nIntroduce la altura del triangulo : "); printf("\nIntroduce el caracter a pintar: "); printf("\nEstara hueco?: \n"); op1=pintartriangulo();
switch(op1){
case 0: //triangulo lleno
i=0;
while(i < n-1){
for(j= 0; j<=i; j++)
i++;
}
i=0;
while(i < n){
for(j= 0; j< n-i; j++)
i++;
}
break;
case 1: //triangulo vacio
i=0;
while(i < n-1){
for(j= 0; j < n; j++)
if(j == 0 || j==i)
else
i++;
}
i=0;
while(i < n){
for(j= 0; j < n; j++)
if(j == 0 || j== n-i-1)
else
i++;
}
break;
}
return 0;
}
Aunque yo soy más partidario de usar for en lugar de while ya que conoces los valores inicial y final:
Código C++:
Ver original#include <stdio.h>
int pintartriangulo(){
int opcion=0;
return opcion;
}
int main(){
int n, op1, i, j;
char c;
printf("\nIntroduzce la altura del triangulo : "); printf("\nIntroduce el caracter a pintar: "); printf("\nEstara hueco?: \n"); op1=pintartriangulo();
switch(op1){
case 0: //triangulo lleno
for(i=0;i<n-1;i++){
for(j= 0; j<=i; j++)
}
for(i=0;i<n;i++){
for(j= 0; j< n-i; j++)
}
break;
case 1: //triangulo vacio
for(i=0;i<n-1;i++) {
for(j= 0; j < n; j++)
if(j == 0 || j==i)
else
}
for(i=0;i<n;i++){
for(j= 0; j < n; j++)
if(j == 0 || j== n-i-1)
else
}
break;
}
return 0;
}
E incluso me decanto por el operador ternario en lugar del if-else:
Código C++:
Ver original#include <stdio.h>
int pintartriangulo(){
int opcion=0;
return opcion;
}
int main(){
int n, op1, i, j;
char c;
printf("\nIntroduzce la altura del triangulo : "); printf("\nIntroduce el caracter a pintar: "); printf("\nEstara hueco?: \n"); op1=pintartriangulo();
switch(op1){
case 0: //triangulo lleno
for(i=0;i<n-1;i++){
for(j= 0; j<=i; j++)
}
for(i=0;i<n;i++){
for(j= 0; j< n-i; j++)
}
break;
case 1: //triangulo vacio
for(i=0;i<n-1;i++) {
for(j= 0; j < n; j++)
}
for(i=0;i<n;i++){
for(j= 0; j < n; j++)
}
break;
}
return 0;
}
¡¡¡Saluditos!!!