dibujaPiramide1: получи целое число, n, как параметр ввода и нарисуй пирамиду, у последней линии которой будут n характеры: (он ничего не возвращает)
То, что я могу сделать, состоит в том, чтобы он возвратил мне столько линий как N, но не столько символов в последней линии.
Мой код - следующий:
public void dibujaPiramide1(int num) {
for(int altura = 1; altura<=num; altura++){
//Espacios en blanco
for(int blancos = 1; blancos<=num-altura; blancos++){
System.out.print(" ");
}
//Asteriscos
for(int asteriscos=1; asteriscos<=(altura*2)-1; asteriscos++){
System.out.print("*");
}
System.out.println("");
}
}
Только ты faltГі показывать, в конце for
приходящий ученик, переменная asteriscos
. Но есть один pequeГ±o проблема: поскольку asteriscos
- локальные внутренние в for
, или же - переменная, свойственная этому for
, когда она querГ©s использовать вне Вашего ГЎmbito (ключи {}
) не возможно, так как он не распознается. Следовательно нужно признавать ее снаружи, как глобальной переменной mГ©todo dibujaPiramide1
. AsГ-:
public void dibujaPiramide1(int num) {
int asteriscos =0;//declaración de variable global de este método. Es obligatorio inicializarla, de lo contrario no compila.
for(int altura = 1; altura <= num; altura++){
//Espacios en blanco
for(int blancos = 1; blancos <= num-altura; blancos++){
System.out.print(" ");
}
//Asteriscos
for(asteriscos =1 ;asteriscos <= (altura*2)-1; asteriscos++){
System.out.print("*");
}
System.out.println("");//salto de linea
}
asteriscos--;//decrementamos unidad por que incrementa una más en la última iteración
System.out.println("Cantidad de caracteres en la base de la pirámide: "+asteriscos);
}
Ты cГіdigo он не правилен, так как в конце концов он рисует n*2-1 в основании ее pirГЎmide, что ты estГЎn прося это состоит в том, чтобы ты покрасил n звездочки в основании, потом ты cГіdigo deberГ, - чтобы быть:
public static void dibujaPiramide1(int num) {
int asteriscos=1;
for(int j = 1; j<=num; j++){
//Espacios en blanco
for(int blancos = 1; blancos<=num-j; blancos++){
System.out.print(" ");
}
//Asteriscos
for(int i=1; i<=asteriscos; i++){
System.out.print("* ");
}
System.out.println("");
asteriscos++;
}
}
Нужно иметь в виду, что высота состоит nГєmero в том, чтобы ты поместил его, и что из-за каждой звездочки ты должен помещать место в мишень в способе. PruГ©balo и смотри результат, посмотрим это тот, что ты ждешь. Поскольку ты не поместил пример одной pirГЎmide уже нарисованная со звездочками, я не уверен, что это ожидаемый результат, Но думаю, что то, что estГЎs ища.