|

44. C++ || Funciones ejercicios

61. Hacer una Función en C++ que que imprima una pirámide de asteriscos tomando como entrada el número de filas de la misma. La pirámide debe quedar de la siguiente manera:

*
***
*****
*******
*********

#include <iostream>
using namespace std;

const char SIMBOLO = '*';

void escribirTriangulo(int numeroDeFilas);
void escribirFila(int i, int numeroDeFilas);
void escribirAsterisco(int n, char asterisco);

int main (){
    cout << "Introduzca numero de filas: ";
    int numeroDeFilas;
    cin >> numeroDeFilas;
    escribirTriangulo (numeroDeFilas);
    return 0;
}

void escribirTriangulo ( int numeroDeFilas ){
 for ( int i = 0; i < numeroDeFilas ; i++ ){ escribirFila (i,numeroDeFilas); }
 return;
}

void escribirFila ( int i , int numeroDeFilas ){
 escribirAsterisco ( (numeroDeFilas - i - 1) , ' ');
 escribirAsterisco ((2 * i + 1), SIMBOLO);
 cout << endl ;
 return;
}

void escribirAsterisco (int n , char asterisco){
 for (int i = 0; i < n; i++) { cout << asterisco; }
 return;
}

62. Hacer una Función en C++ que que imprima una pirámide de dígitos tomando como entrada el número de filas de la misma. La pirámide debe quedar de la siguiente manera:

1
121
12321
1234321
123454321

#include <iostream>
using namespace std;

const int MAXIMO_DE_FILAS = 10;

void escribirCaracter(int n, char simbolo);
void escribirCaracterAscendente(int n);
void escribirCaracterDescendente(int n);
void escribirFila(int fila, int numeroDeFila);
void escribirTriangulo(int numeroDeFila);

int main(){
    cout<<"Introduzca el numero de filas: ";
    int numeroDeFilas;
    cin>>numeroDeFilas;
    if(numeroDeFilas <= MAXIMO_DE_FILAS){
        escribirTriangulo(numeroDeFilas);
    }else{
        cout<<"Ingresa un numero del 1 al 10"<<endl;
    }
    return 0;
}

void escribirCaracter(int n, char simbolo){
    for(int i = 0; i < n; i++){     cout<<simbolo;  }
    return;
}

void escribirCaracterAscendente(int n){
    for(int i = 1; i <= n; i++){    cout<<i;   }
    return;
}

void escribirCaracterDescendente(int n){
    for(int i = n; i >= 1; i--){    cout<<i;   }
    return;
}

void escribirFila(int fila, int numeroDefila){
    escribirCaracter((numeroDefila - fila),' ');
    escribirCaracterAscendente(fila);
    escribirCaracterDescendente(fila - 1);
    cout<<endl;
    return;
}

void escribirTriangulo(int numeroDeFila){
    for(int fila = 1; fila <= numeroDeFila; fila++){    escribirFila(fila, numeroDeFila);   }
    return;
}

63. Hacer una Función en C++ que que imprima otra pirámide de dígitos tomando como entrada el número de filas de la misma. La pirámide debe quedar de la siguiente manera:

1
232
34543
4567654
567898765
67890109876
7890123210987
890123454321098
90123456765432109
0123456789876543210
123456789010987654321

#include <iostream>
using namespace std;

const int MAXIMO_DE_FILAS = 10;

void escribirCaracter(int n, char simbolo);
void escribirCaracterAscendente(int fila, int n);
void escribirCaracterDescendente(int n, int fila);
void escribirFila(int fila, int numeroDeFila);
void escribirTriangulo(int numeroDeFila);

int main(){
    cout<<"Introduzca el numero de filas: ";
    int numeroDeFilas;
    cin>>numeroDeFilas;
    escribirTriangulo(numeroDeFilas);
    return 0;
}

void escribirCaracter(int n, char simbolo){
    for(int i = 0; i < n; i++){     cout<<simbolo;  }
    return;
}

void escribirCaracterAscendente(int fila, int n){
    for(int i = fila; i <= n; i++){    cout<<i % 10;   }
    return;
}

void escribirCaracterDescendente(int n, int fila){
    for(int i = n; i >= fila; i--){    cout<<i % 10;   }
    return;
}

void escribirFila(int fila, int numeroDefila){
    escribirCaracter((numeroDefila - fila),' ');
    escribirCaracterAscendente(fila,((2 * fila) - 1));
    escribirCaracterDescendente(((2 * fila) - 2),fila);
    cout<<endl;
    return;
}

void escribirTriangulo(int numeroDeFila){
    for(int fila = 1; fila <= numeroDeFila; fila++){    escribirFila(fila, numeroDeFila);   }
    return;
}

64. Hacer una Función en C++ que que imprima la serie de Fibonacci.

#include <iostream>
using namespace std;

const int PRIMER_NUMERO_FIBONACCI = 0;
const int SEGUNDO_NUMERO_FIBONACCI = 1;

void imprimirFibonacci(int numero);
int fibonacci(int numero);

int main (){
    int numero;
    cout << " Introduzca N: ";
    cin >> numero;
    imprimirFibonacci(numero);
    return 0;
}

void imprimirFibonacci (int numero){
    for (int i = 0; i < numero; ++i){  cout <<fibonacci (i)<< ", ";  }
    cout<<endl;
    return;
}

int fibonacci(int numero){
    int fibonacciActual = 0;
    if(numero == 0){
        fibonacciActual = PRIMER_NUMERO_FIBONACCI;
    }else{
        int fibonacciPrimero = PRIMER_NUMERO_FIBONACCI;
        fibonacciActual = SEGUNDO_NUMERO_FIBONACCI;
        for (int i = 2; i <= numero; ++i){
            int fibonacciSegundo = fibonacciPrimero;
            fibonacciPrimero = fibonacciActual;
            fibonacciActual = fibonacciPrimero + fibonacciSegundo ;
        }
    }
    return fibonacciActual;
}

65. Hacer una Función en C++ que que imprima la serie de Fibonacci usando otro método.

#include <iostream>
using namespace std;

const int PRIMER_NUMERO_FIBONACCI = 0;
const int SEGUNDO_NUMERO_FIBONACCI = 1;

void imprimirFibonacci(int numero);

int main (){
    int numero;
    cout << " Introduzca N: ";
    cin >> numero;
    imprimirFibonacci(numero);
    return 0;
}

void imprimirFibonacci(int numero){
    if(numero > 0){
        cout<<PRIMER_NUMERO_FIBONACCI<<", ";
    }
    if(numero > 1){
        cout<<SEGUNDO_NUMERO_FIBONACCI<<", ";
    }
    int fibonacciPrimero = PRIMER_NUMERO_FIBONACCI;
    int fibonacciActual = SEGUNDO_NUMERO_FIBONACCI;
    for(int i = 2; i < numero; i++){
       int fibonacciSegundo = fibonacciPrimero;
       fibonacciPrimero = fibonacciActual;
       fibonacciActual = fibonacciPrimero + fibonacciSegundo;
       cout<<fibonacciActual<<", ";
    }
    cout<<endl;
    return;
}

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *