Código C++

  • Blog
  • Acerca
  • Autor
  • Contacto
  • Posts guardados en "Programas":

    Programa: Recuadros en C++

    Ya que sabemos usar los ciclos for y el gotoxy, vamos a hacer un programa que muchos profesores encargan: un recuadro en c++, es decir, un margen o contorno para darle mas presentación a un programa.

    En realidad es muy sencillo:

    #include<stdio.h>
    #include<conio.h>
     
    int main()
    {
      int x=0;
      for(x=1;x<=80;x++) 
      {
        gotoxy(x,1);printf(".");
        gotoxy(x,22);printf(".");
        gotoxy(4,23);printf("Nombre:  Programa:  Numero:     ");
        gotoxy(x,24);printf(".");
        if(x<=24)
        {
          gotoxy(1,x);printf(".");
          gotoxy(80,x);printf(".");
        }
      }
      getch();
    }

    Modifíquenlo, échenle imaginación. Yo use puntos (.), pero ustedes pueden usar cualquier otro caracter.

    Programa: Tabla ASCII en C++ (sencillo)

    Bien, ahora que ya vimos algo de teoría y práctica sobre ciclos en c++, vamos a hacer un programa que nos muestre el código ASCII del 1 al 256. Por si no los saben, las computadoras solo ‘entienden’ números, así que cada letra y cada caracter es en realidad un número; eso es el código ASCII.

    Así que el programa sería así:

    #include<stdio.h>
    #include<conio.h>
     
    int main() {
      int ascii=0,col=1,ren=1;
      for(ascii=1;ascii<=256;ascii++) {
        gotoxy(col,ren);printf("%i: %c  ",ascii,ascii);
        if(ren==24) { ren=0; col+=12; }
        if(col>=80) { getch(); clrscr(); ren=0; col=1; }
        ren++;
      }
      getch();
    }

    Variables:

    • ascii -> Controla el ciclo desde 1 hasta 256
    • ren -> Controla los renglones
    • col -> Controla las columnas

    Cuando ren==24, los renglones comienzan en cero de nuevo y se empieza en una nueva columna; cuando col>=80, se detiene el transcurso del ciclo, luego se limpia la pantalla y se reinician los renglones y las columnas.

    Programa: ¿Aprobó o no aprobó?

    También es muy común entre los profesores, encargar este tipo de programas una vez que se ven las condiciones. De lo que se trata es de pedir, por ejemplo, 3 calificaciones, sacar el promedio y mostrar un mensaje si el alumno aprobó o no aprobó.

    Como el promedio puede ser una valor con decimales, tenemos que declarar las variables como tipo float.

    #include<stdio.h>
    #include<conio.h>
     
    int main()
    {
      float calif_1=0,calif_2=0,calif_3=0,promedio=0;
      printf("\nIntroduce tu primera calificacion: ");scanf("%f",&calif_1);
      printf("\nIntroduce tu segunda calificacion: ");scanf("%f",&calif_2);
      printf("\nIntroduce tu tercera calificacion: ");scanf("%f",&calif_3);
     
      promedio=(calif_1+calif_2+calif_3)/3;
     
      if(promedio<6)
      {
       printf("\n\tLo siento, tu promedio de %.2f no es aprobatorio",promedio);
      }
      else
      {
        printf("\n\tFelicidades, pasaste con un %.2f",promedio);
      }
     
      getch();
    }

    Aquí estamos asumiendo que la calificación mínima aprobatoria es de 6, pero ¿y si quiero que este dato también sea variable? Entonces el programa quedaría así:
    Seguir leyendo…

    Ok, hasta hoy ya hemos visto las herramientas necesarias para hacer nuestro primer programa un poco más en serio. Este programa nos pide la medida de los tres lados de un triángulo y nos devuelve el tipo de triangulo que es (equilátero, isósceles o escaleno).

    Para esto vamos a usar condiciones en C++ para comparar los lados de nuestro triángulo.

    Un tríangulo equilátero tiene sus tres lados iguales, por tanto, la condición quedaría así:

    “si el lado 1 es igual al lado 2 y el lado 2 es igual al lado 3, entonces es equilátero”

    Un tríangulo isósceles tiene solo dos lados iguales, por tanto, la condición quedaría así:

    “si el lado 1 es igual al lado 2 y el lado 2 es diferente al lado 3, o
    el lado 2 es igual al lado 3 y el lado 3 es diferente al lado 1, o
    el lado 3 es igual al lado 1 y el lado 1 es diferente al lado 2 entonces es isósceles”

    Un tríangulo escaleno tiene sus tres lados diferentes, por tanto, la condición quedaría así:

    “si el lado 1 es diferente al lado 2 y el lado 2 es diferente al lado 3 y el lado 3 es diferente al lado 1, entonces es escaleno”

    Pero vamos a lo bueno. El programa completo en C++, sería así:

    #include<stdio.h>
    #include<conio.h>
    int main()
    {
      //Declaracion de variables
      int lado1=0,lado2=0,lado3=0;
     
      //Pedir los datos
      printf("TIPOS DE TRIANGULOS");
      printf("\nIntroduce el lado 1: ");scanf("%i",&lado1);
      printf("\nIntroduce el lado 2: ");scanf("%i",&lado2);
      printf("\nIntroduce el lado 3: ");scanf("%i",&lado3);
     
      //Hacer comparaciones
      if(lado1==lado2 && lado2==lado3)
      { printf("\n\tEs equilatero"); }
      if(lado1==lado2 && lado2!=lado3 || lado2==lado3 && lado3!=lado1 || lado3==lado1 && lado1!=lado2)
      { printf("\n\tEs isosceles"); }
      if(lado1!=lado2 && lado2!=lado3 && lado3!=lado1)
      { printf("\n\tEs escaleno"); }
     
      //Pausa
      getch();
    }

    Aprovecho para explicarles un detalle más. \n (alt+92 n) dentro de un printf(); indica un salto de línea, y \t (alt+92 t) indica una sangría o tabulado o algo de espacio.

    Páginas: Anterior 1 2 3 4 5