Assume the availability of a method named makeStars that can be passed a non-neg
ID: 3668975 • Letter: A
Question
Assume the availability of a method named makeStars that can be passed a non-negative integer n and that returns a String of n asterisks. Write a method named printTriangle that receives a non-negative integer n and prints a triangle of asterisks as follows: first a line of n asterisks, followed by a line of n-1 asterisks, and then a line of n-2 asterisks, and so on. For example, if the method received 5 it would print:
* * * * *
* * * *
* * *
* *
*
The method must not use a loop of any kind (for, while, do-while) to accomplish its job. The method should invoke makeStars to accomplish the task of printing a single line.
Explanation / Answer
#include <stdio.h>
void makeStars(int n){
if(n <=1 )
printf("*");
else{
printf("*");
makeStars(n-1);
}
}
void printTriangle(int n){
if(n <=1 )
printf("*");
else {
makeStars(n);
printf(" ");
printTriangle(n-1);
}
}
int main(void) {
printTriangle(5);
return 0;
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.