Tipos simples
Introducción
En Programación I (C) trabajabas con tipos básicos (int, float, char) y entrada/salida con printf/scanf.
En Programación II (C++) seguimos usando tipos básicos, pero normalmente:
- usamos iostream (
std::cout,std::cin) en vez deprintf/scanf - preferimos tipos de la STL cuando proceda (p.ej.
std::stringen vez dechar[]) - cuando nos interesa que el tamaño (bits) sea exactamente el mismo en cualquier plataforma, usamos tipos de tamaño fijo de
<cstdint>comostd::int32_t,std::int16_t,std::uint32_t, etc.
1) Declarar e inicializar variables básicas y mostrarlas
P1 — C
#include <stdio.h>
int main() { int edad = 20; float altura = 1.75f; char inicial = 'C';
printf("Edad: %d\n", edad); printf("Altura: %.2f\n", altura); printf("Inicial: %c\n", inicial);
return 0;}P2 — C++
#include <iostream>#include <iomanip> // std::fixed, std::setprecision
int main() { int edad = 20; float altura = 1.75f; char inicial = 'C';
std::cout << "Edad: " << edad << "\n"; std::cout << "Altura: " << std::fixed << std::setprecision(2) << altura << "\n"; std::cout << "Inicial: " << inicial << "\n";
return 0;}2) Pedir un entero y mostrar doble, triple y cuadrado
P1 — C
#include <stdio.h>
int main() { int n, doble, triple, cuadrado;
printf("Introduce un número entero: "); scanf("%d", &n);
doble = n * 2; triple = n * 3; cuadrado = n * n;
printf("Doble: %d\n", doble); printf("Triple: %d\n", triple); printf("Cuadrado: %d\n", cuadrado);
return 0;}P2 — C++
#include <iostream>
int main() { int n;
std::cout << "Introduce un número entero: "; std::cin >> n;
int doble = n * 2; int triple = n * 3; int cuadrado = n * n;
std::cout << "Doble: " << doble << "\n"; std::cout << "Triple: " << triple << "\n"; std::cout << "Cuadrado: " << cuadrado << "\n";
return 0;}3) Perímetro de un triángulo con puntos (distancia euclídea)
P1 — C
#include <stdio.h>#include <math.h>
int main() { int x1, y1; int x2, y2; int x3, y3;
double lado1, lado2, lado3; double perimetro;
printf("Introduce el punto 1: "); scanf("%d,%d", &x1, &y1); printf("Introduce el punto 2: "); scanf("%d,%d", &x2, &y2); printf("Introduce el punto 3: "); scanf("%d,%d", &x3, &y3);
lado1 = sqrt((x2 - x1)*(x2 - x1) + (y2 - y1) * (y2 - y1)); lado2 = sqrt((x3 - x2)*(x3 - x2) + (y3 - y2) * (y3 - y2)); lado3 = sqrt((x3 - x1)*(x3 - x1) + (y3 - y1) * (y3 - y1));
perimetro = lado1 + lado2 + lado3;
printf("El perímetro del triángulo cuyos lados son (%d,%d)--(%d,%d)--(%d,%d) es %.3f\n", x1,y1, x2,y2, x3,y3, perimetro);
return 0;}P2 — C++
#include <iostream>#include <cmath>#include <iomanip>
double distancia(int x1, int y1, int x2, int y2) { const int dx = x2 - x1; const int dy = y2 - y1; return std::sqrt(dx * dx + dy * dy);}
int main() { int x1, y1, x2, y2, x3, y3;
// Leemos "x,y" capturando la coma: char coma;
std::cout << "Introduce el punto 1 (x,y): "; std::cin >> x1 >> coma >> y1;
std::cout << "Introduce el punto 2 (x,y): "; std::cin >> x2 >> coma >> y2;
std::cout << "Introduce el punto 3 (x,y): "; std::cin >> x3 >> coma >> y3;
const double lado1 = distancia(x1, y1, x2, y2); const double lado2 = distancia(x2, y2, x3, y3); const double lado3 = distancia(x1, y1, x3, y3);
const double perimetro = lado1 + lado2 + lado3;
std::cout << std::fixed << std::setprecision(3); std::cout << "El perímetro del triángulo cuyos lados son (" << x1 << "," << y1 << ")--(" << x2 << "," << y2 << ")--(" << x3 << "," << y3 << ") es " << perimetro << "\n";
return 0;}