C++
Creado por José Fernando Vidal García
Variables
= …;
Al usar un igual a la d derecha de una variable haces que lo que esté a su derecha sea su nuevo valor
string
Es para usar caracteres
char
Se usa entre ‘____’
Es un solo caracter
int
Es para usar números enteros
En un “Cin” si separas los números se guardan el el buffer del teclado y la siguiente variable tendrá el segundo número
float
Es para usar números decimales
bool
bool variable = true;
Constantes (ejs)
const int N = 10;
const int Distancia = int('a') -int('A');
Algoritmo
Siempre el algoritmo tiene que estar en dentro de:
#include <iostream>
using namespace std;
int main(){
}
Printf(”Hello world”);
Sirve para que el programa escriba en la terminal “Hello world”
Cout << ”Hello world”;
Sirve para que en la terminal se escriba “Hello world” pero si hay una sucesión de Cout no salta linea.
Si pones \n dentro de las comillas es un salto de página :)
Endl
Cuando en un “Cout” pones “endl” haces que ocurra salto de linea
Cin >>
Deja que escribas en la terminal para darle un valor a una variable.
Recoger mierdas del buffer
cin.get(c);
Limpiar el buffer
cin.ignore();
Operadores
Suma y Resta ( +, - )
Si los números son enteros el resultado será entero, alguno es real será real el resultado.
Multiplicación ( * )
Si los números son enteros el resultado será entero, alguno es real será real el resultado.
DIV ( / )
Devuelve el resultado de la división sin decimales de una división
MOD ( % )
Devuelve el resto de la división
División normal ( / )
Te devuelve números reales
<> = ≤ ≥ ≠
Devuelve booleanos es decir verdadero o falso
Sucesor y Predecesor
Sucesor (+1) i++
Predecesor (-1) i--
Operadores para caracteres
Car
Transforma de entero a carácter
Ord
Transforma de carácter a entero
También se puede usar predecesor y sucesor
Operadores complejos
Pow (elevar a algo)
Hay que poner al principio: #include <cmath>
Despues pones: pow(base, a_lo_que_elevas);
Sqr (elevar al cuadrado)
Hay que poner al principio: #include <cmath>
Despues pones: sqr(base, a_lo_que_elevas);
Sqrt (raiz cuadrada)
Hay que poner al principio: #include <cmath>
Despues pones: sqrt(base, a_lo_que_elevas);
Tablas
Una dimensión
typedef float Vector[NColumnas];
´El número es el numero de columnas y solo hay una fila
typedef char Frase [N];
int i;
int cont;
//Declaración e inicialización de la tabla t
Frase t = {'E','L',' ','S','O','L',' ','S','E',' ','E','S','C','O','N','D','E','#'} ;
//Se muestra la frase en pantalla, recorrido primer modelo secuencial
i = 0; //Inicialización
cont=0;
while (t[i] != '#') { // Mientras el EA sea distinto de la Marca Fin
cout<<t[i]; //Tratamiento del EA: mostrar y
if (t[i]=='E') { cont=cont+1; } //Contar el número de caracteres 'E'
i=i+1; //Avanzar
cout<<endl;
};Para hacer una llamada a la tabla tienes que poner la columna que deseas entre corchetes y a la izquierda el nombre de la tabla, t[i] , aqui definimos una variable para que elijamos la columna
Multidimensional
typedef int Matriz[NFilas][NColumnas];
Es igual pero para llamar usamos tabla[i][j]
//inicializar la tabla
Tipo_Tabla miTabla = {
{12, 20, 16, 18, 21, 22, 18, 11, 12, 15},
{14, 13, 9, 8, 20, 92, 13, 10, 21, 17},
{15, 20, 26, 28, 21, 23, 28, 31, 26, 25},
{22, 25, 36, 38, 41, 49, 58, 61, 62, 75},
{13, 83, 26, 88, 23, 32, 81, 51, 42, 83},
{11, 02, 16, 48, 31, 95, 58, 41, 33, 22},
{14, 24, 46, 14, 41, 24, 48, 51, 15, 55},
{15, 50, 66, 78, 11, 92, 8, 13, 22, 25},
}; // ponemos cada fila entre llaves y unas llaves para toda la tablaRandomizar una tabla
int main() {
Temperaturas t;
int i,j;
for(i=0;i<NANYO;i++){
for(j=0;j<NDIA;j++){
t[i][j] = rand()%21+20;
cout << t[i][j] << " | ";
}
cout << endl;
}
Análisis de casos
Operadores lógicos
Y = “&&”
Igual = “==”
O = “||”
If
Sirve para que cuando pase algo la maquina haga otra cosa
if (cond) {
S
}Else
Es complementario del if, cuando no se produce el if se reproduce el else
if (cond) {
S
} else {
R
} Switch
El switch sirve para elegir entre muchos casos
No se puede usar operadores lógicos
El default es muy importante pues es lo que hará si no le damos ningún input que requiera para darnos algo en especifico
Si no pones el break se ejecutarán todos los de debajo del caso que tu elijas, es decir si digo “B” me dirá lo que dice del B del C y el dafault
switch (PermisoConducir) {
case 'A':
cout << "Motocicletas y triciclos de motor";
break;
case 'B' :
cout << "Automóviles masa máxima autorizada <= 3500 kg";
break;
case 'C' :
cout << " Automóviles masa máxima autorizada > 3500 kg ";
break;
default :
cout << "No contemplado";
break;
}
Bucles
Break
Se usa para para un bucle
Se puede usar
If (cond) break;
o
Break;
While
Se produce mientras la condición se cumpla, la condición se actualiza al principio, no al final
while (cond) {
S;
}
Do while
Hacer mientras: la comprobación se hace al final
int numero;
do
{
cout << "Ingrese un numero ";
cin >> numero;
}
while(numero <= 100); //comprueba al final
for
Esto es realmente un while donde al principio decimos cuanto vale i, despues le decimos que mientras i sea menos o igual que b se siga ejecutando y por ultimo le decimos cuanto va a ir subiedo que va a ser uno por uno
for (i = a; i<=b; i++){
S;
}Esto es lo mismo que:
i=a;
while (i<= b){
S;
i++;
}
Funciones
Hay variables de entrada y uno de salida
Lo que quieres que salga es lo que va después del return
Las funciones pueden devolver solo una variable y no la devuelven de vuelta como tal, simplemente haces que se produzca una operación entonces si quieres guardarte el resultado de una función en una variable tendrás que poner: max = Max2(500,200);
int Max2 (int a, int b)
{
int mayor;
if (a > b) {
mayor = a; }
else {
mayor = b; }
return mayor;
}
cout << Max2 (x,y);
Acciones
Se representan con un void "nombre"(){… }
Se declara encima de main
Las variables en las acciones funcionan diferente hay unas de lectura y otras que se trasladan al exterior.
Si pones & puedes que hacer que sea de entrada y salida o solo salida
Ahí declaras que cuando te pongan variables en ese orden se asignarán a las todas las b en el mismo orden
void BinDec (int b1, int b2, int b3, int b4, int &dec)
{
dec = b1*1 + b2*2 + b3*4 + b4*8;
}
BinDec (a1, a2, a1, a2, decimal1);b1*a1 + b2*a2 + b3*74 + b4*8;
Tipos de Variables
Es una variable que dentro de ella hay varias, en este caso hemos hecho la variable punto que tiene abcisas y ordenadas, definimos como se va a llamar este tipo de productos y como lo vamos a llamar (con P)
struct Punto {
float abscisa, ordenada;
};
//hasta aqui has dicho que hay un nuevo tipo de variable llamado punto que contsta de dos
//ahora para usarla tienes que hacer una variable o las que quieras
Punto p;
…
cout << p.ordenada << endl;
Espera
delay(12); los 12 son los segundos
Rand
randomizamos
x=rand()%21+20;