No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Reg铆strate

Comienza en:

3D
11H
15M
51S

Declaraci贸n de variables

12/16
Recursos

Aportes 45

Preguntas 8

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Los placeholders (%d) o marcadores de posici贸n son etiquetas que le indican al compilador, lo que debe imprimir en el lugar donde se encuentra la etiqueta

Existen varios placeholders que podemos usar en C, para imprimir variables de diferentes tipos, incluso en un formato particular (Ej. imprimir un dato float con una cantidad definida de decimales). Comparto una tabla que contiene los placeholders m谩s importantes. Espero les sirva

%d Se utiliza para representar una parte de la memoria como un n煤mero entero.

Placeholders usados en C

%c - a character

%s - a string

%d - a decimal integer

%o - an octal integer

%x - a hexadecimal integer

%p - an address (pointer)

%f - for floats

%e - a floating point number in scientific notation

%E - a floating point number in scientific notation

%% - The % symbol

VALORES ENTEROS:

  • int = 4 Bytes (-2147483648 to 2147483647)

  • unsigned int = 4 Bytes (0 to 4294967295)

  • short = 2 Bytes (-32768 to 32767)

  • unsigned short = 2 Bytes (0 to 65535)

  • long = 8 Bytes (-9223372036854775808 to 9223372036854775807)

  • unsigned long = 8 Bytes (0 to 18446744073709551615)

FLOTANTES:

  • float = 4 Bytes (1.2E-38 to 3.4E+38) 6 decimal places

  • double = 8 Bytes (2.3E-308 to 1.7E+308) 15 decimal places

  • long double = 10 Bytes (3.4E-4932 to 1.1E+4932) 19 decimal places

CAR脕CTER:

  • char = 1 Byte (-128 to 127)

  • unsigned char = 1 Byte (0 to 255)

Un tip muy 煤til para saber hasta que numero puedo representar con determinado tipo de dato es aprendi茅ndose solo sus bytes. Sabemos que cada byte se compone de 8 bits y que con cada bit puedo representar 2 n煤meros (ei, con un bit puedo representar 0 y 1; con 2 bits puedo representar 0,1,2,3; etc). Dicho esto la f贸rmula se resume a 2^n, siendo n el n煤mero de bits. As铆, por ejemplo, un unsigned char ser铆a 2^8 siendo el resultado 256 valores que van desde el 0 al 255; un int al tener 4 bytes (que son 32 bits) ser铆a 2^32 = 4,294,967,296 que si lo dividimos entre dos y consideramos el 0 nos da el valor que aparece en la pantalla

no siempre las variables se inician a 0, as铆 que es bueno iniciarlas a 0 por si las dudas

#include <stdio.h>

//Variable Declarations
int a, b, c;

float f, g, h;

int main ()
{
    //Variable inicialization
    a = 1;
    b = 34;

    c = a + b;
    printf("Value of sum is: %d" , c);
    return 0;
}```
#include<stdio.h> //instruccion inclue librerias manejo de entradas y salidas estandares
//declaracion de variables Variables Declarations
 // extern int //cuando las vas ocupar en diferentes arichivos a lo largo de tu codigo
int a, b, c;

float f,g,h;


int main () //cfuncion principal donde la ejecuncion programa comienxa
{
  //inicializacion de variables Variable Initialization 
    a = 1;
    b = 34;
    c = a + b; 
    
    printf ("Value of sum is: %d" , c ); //%d registra el tipo de dato la variable y posicion donde vamos imprimir
    return 0; //finaliza programa
}```

Por fin entiendo el uso de variables

Declaraci贸n de variables

Cuando declaramos la variable, en realidad estamos reservando la memoria que nos permitir谩 guardar la informaci贸n.
Cada variable tendr谩 su tipo y ese tipo nos dice cuanta memoria requiere para almacenar el dato.

Tenemos dos instancias importantes que debemos tomar en cuenta.

  1. Declaraci贸n de la variable: Reservamos la memoria y le damos nombre.
    Ejemplo:
//Variable declarations

int a, b, c;

  

float f, g, h;

Declaramos 6 variables

  1. Inicializaci贸n de variables: Le damos el valor que tendr谩 la variable.
    Ejemplo:
//Variable initialization

聽 聽 a = 1;

聽 聽 b = 34;

  

聽 聽 c = a + b;

Le damos valor a nuestras variables enteras

Variable.
Espacio reservado en la memoria para almacenar informaci贸n.
Cada variable tiene un tipo de dato que determina el tama帽o & la estructura que se reserva en memoria.

tipoDato nombreVariable = valorVariable ;
char name = "Moises";
int year = 1994;

Donde escriba el tipo de la variable es donde lo va a imprimir.

<

Para aquellos que se quedaron con la duda de la funci贸n de 鈥渆xtern鈥 aqu铆 les paso un articulo en el cual se menciona su prop贸sito, sus usos y se a帽aden algunos ejemplos pr谩cticos.
https://www.geeksforgeeks.org/understanding-extern-keyword-in-c/

Para integrar los conocimientos de las primeras clases se podr铆a haber declarado a las variables utilizadas en el 煤ltimo ejercicio (cuando el profe sum贸 1 + 34) como de tipo 鈥榰nsigned short鈥 en vez de 鈥榠nt鈥 馃槢

Como es el scope en C?, lo investigare mas tarde, pero se me hace que las variables siempre que esten afuera de toda la funcion son globales no?

Mucho video para explicar muy poco prefiero los crash courses

Quise realizar una calculadora para velocidades cercanas a la velocidad de la luz desde un sistema de referencia externo, a grandes rasgos esto se obtiene mediante una operaci贸n 鈥&鈥 donde a&b=(a+b)/(1+a*b/c^2) donde 鈥渃鈥 es la velocidad de la luz.
Bueno us茅 c=30 la idea es la misma, si opero valores menores o iguales a 30 obtengo valores menores o iguales a 30, y si al menos uno de los operandos es 30, obtengo 30鈥 EL punto es que se me dificult贸 m谩s de lo que esperaba, al final est谩 el c贸digo funcional:

Fue necesario incluir math.h para utilizar sin problemas la funci贸n pow para hacer 30^2.
Me preocupe por hacer operacion por operacion, como a y b son enteros, c=a+b tambi茅n lo es, d=a*b tambi茅n lo es y e=pow(30,2) tambi茅n lo es, el problema fue al definir f=d/e que por ser cociente de enteros es racional por lo que us茅 un float, igual para g=f+1 y para h =c/g.
Pero esto no es suficiente al darle print a f=d/e por mas de que f era un float me expresaba como resultado 0 como forz谩ndolo a ser entero, revisando encontr茅 eso de poner (float) previo al cociente para obtener un n煤mero decimal. A煤n encima de todo eso fue necesario poner %f en el print para que el valor fuera una expresi贸n decimal, sino simplemente me daba cero. No se quer铆a contarles esa experiencia.

#include <stdio.h>
#include <math.h>

//Variable Declartions

int a, b, c, d, e;
float f, g, h;

int main()
{
    //Variable initialization
    a = 1;
    b = 30;
    //We want to calculate (a+b)/(1+a*b/30^2)
    c = (a+b);
    d = a*b;
    e = pow(30,2);
    f = (float)d/e;
    g = f+1;
    h = c/g;

    printf("Value of sum %f", h);
    return 0;
}

Es importante mencionar que si no pones el placeholder o marcador de posici贸n que corresponde, al momento de imprimir el resultado te va a devolver como decimos popularmente basura.

Desbordamiento de memoria. Excedimos el especios que teniamos asignados a los valores pocitivos y el n煤mero se fue a los valores de los numeros negativos.

Buena practica dejar espacios.

Inicializaci贸n de variables. Cuando les asignamos valores a nuestra variables.

Comando extern. Declarar variables cuando se van a ocupar en diferentes archivos a los largo del caodigo.

//Comentarios sencillo. En una sola linea. /* Comentarios en multiples lineas. */

Tambien las buenas practicas siempre dejar comentarios. Para que alguien m谩s que lea el codigo sepa a que se refiere.

Recomendable buena practica, dejar variables inicializadas, excpeto cuando son auxiliares.

Las variables deben de empezar con una letra o con "_". Recomendable seguir estructura de camelCase o lowerCamelCase. Nunca declarar variables con un simbolo porque puede ser confuso. Se pueden declarar variables de un mismo tipo separadas por comas. Las variables pueden estar inicializadas o no. Es decir tener un valor de inicio.

Cuando se declaran variable afuera de la estructura del programa se llaman variables globales. Lo que signfica que pueden ser usadas o llamadas en toda la ejecui贸n del programa.

Variable: Nombre que le damos a un espacio recerbado en memoria, para almacenar informaci贸n en nuestro programa. Cada variable tiene un tipo de dato.

Nice

nunca explico nada de lo que dijo de 鈥渕as adelante lo vemos鈥

  • Una variable es el nombre que se le va a dar en el espacio reservado de la memoria para poder almacenar la info del programa.
  • Cada variable va a tener un tipo espec铆fico, determinando el tama帽o y estructura que se esta reservando en la memoria.
  • Se pueden declarar variables fuera del main.
  • Al programar se debe pensar cu谩l es el tipo de datos que mas va a servir, analizando los m谩ximos datos que se pueden almacenar.
  • Se pueden declarar variables de un mismo tipo y se pueden separar por comas.
  • Se pueden inicializar variables en un valor o no:
    E.G: int minutos = 20;
    int minutos;
  • Respeta los espacios como el profesor lo hizo en el ejemplo, esto me estaba generando un error y perd铆 bastante tiempo busc谩ndolo

Placeholders usados en C
%c - a character (caracter)
%s - a string (alfanum茅rico o cadena)
%d - a decimal integer (numero entero): Se utiliza para representar una parte de la memoria como un n煤mero entero.
%o - an octal integer (numero octal)
%x - a hexadecimal integer (numero hexadecimal)
%f - for floats (decimal)

y si le restan 1 al n煤mero mas peque帽o -2.147.483.648 le da positivo (2.147.483.647 el m谩ximo positivo)

Comando extern.

Comentario de una l铆nea //.

Ejemplo de uso y manipulaci贸n de variables.

Gracias!

%i = integer tambien funciona en vez de %d.

Al inicializar una variable char, 驴es m谩s recomendable hacerlo utilizando comillas simples o dobles?

Es que he visto que eventualmente dentro de comillas dobles podemos necesitar utilizar comillas simples y a lo mejor es buena pr谩ctica reservarlas.

Declaraci贸n e inicializaci贸n de variables de diferentes tipos.

Al la hora de programar es importante tener en cuenta el tama帽o de las variables. Ya que si llegamos a usar una variable peque帽a, el programa se puede desbordar.

Es el mismo espacio de memoria de un dato tipo int con respecto a unsigned int?

exelente video, aprendiendo los tipos de caracteres.

buen curso profe, motivacion al 100%

int i, j, k;
unsigned int minimumMinutes = 30;

char y = 鈥榶鈥;
unsigned char dailyWorkedHours = 0;

Buena practica el incializar variables a menos de que sean auxiliares como i, j, k