sajjad4563
پنج شنبه 06 شهریور 1393, 00:54 صبح
سلام
متد من دو پارامتر داره:
size که طول عمودی ساعت شنی هست
symbol که کاراکتر استفاده شده در ساعت شنی رو مشخص میکنه
برای مثال وقتی متد رو اینجوری فراخوانی کنم:
printHourseGlass(7,'?')
خروجی باید این باشه:
???????
?????
???
?
???
?????
???????
ولی اینجوری میشه:
???????
?????
???
?
???
?????
???????
متد:
public static void printHourseGlass(int size, char symbol) {
int numbeOfSymbol = size;
int numberOfSpace = 0;
while (numbeOfSymbol > 0) {
for (int i = 0; i < numbeOfSymbol; i++) {
System.out.print(symbol);
}
System.out.println();
numberOfSpace++;
for (int i = numberOfSpace; i > 0; i--) {
System.out.print(" ");
}
numbeOfSymbol -= 2;
}
numbeOfSymbol = 3;
numberOfSpace = 2;
while (numbeOfSymbol <= size) {
for (int i = numbeOfSymbol; i > 0; i--) {
System.out.print("j"); // Problem is here
}
System.out.println();
numberOfSpace--;
for (int i = 0; i < numberOfSpace; i++) {
System.out.print(" ");
}
numbeOfSymbol += 2;
}
}
مشکا در متد پرینت است!
ولی نمیدونم چجوری رفع میشه!
متد من دو پارامتر داره:
size که طول عمودی ساعت شنی هست
symbol که کاراکتر استفاده شده در ساعت شنی رو مشخص میکنه
برای مثال وقتی متد رو اینجوری فراخوانی کنم:
printHourseGlass(7,'?')
خروجی باید این باشه:
???????
?????
???
?
???
?????
???????
ولی اینجوری میشه:
???????
?????
???
?
???
?????
???????
متد:
public static void printHourseGlass(int size, char symbol) {
int numbeOfSymbol = size;
int numberOfSpace = 0;
while (numbeOfSymbol > 0) {
for (int i = 0; i < numbeOfSymbol; i++) {
System.out.print(symbol);
}
System.out.println();
numberOfSpace++;
for (int i = numberOfSpace; i > 0; i--) {
System.out.print(" ");
}
numbeOfSymbol -= 2;
}
numbeOfSymbol = 3;
numberOfSpace = 2;
while (numbeOfSymbol <= size) {
for (int i = numbeOfSymbol; i > 0; i--) {
System.out.print("j"); // Problem is here
}
System.out.println();
numberOfSpace--;
for (int i = 0; i < numberOfSpace; i++) {
System.out.print(" ");
}
numbeOfSymbol += 2;
}
}
مشکا در متد پرینت است!
ولی نمیدونم چجوری رفع میشه!