Sintaxis del ciclo for en C
Clase 8 de 13 • Curso de Control de Flujo en C
Contenido del curso
Clase 8 de 13 • Curso de Control de Flujo en C
Contenido del curso
Jesús Ignacio García Fernández
Lisbeth Diaz
Danny López
Jorge Varas
Sebastian Heredia
Matias Arce
Miguel Ángel Santana Guzmán
Irving Juárez
Ilter Sthefano Ulloa Miranda
Jean Nuñez
Daniel Alejandro Romero
Carlos Silva
Juan Fernando Moyano Ramírez
Ernesto Fierro Meléndez
Yerson Steven Rojas Barragan
Gabriel Obregón
Fabio Figueroa Benitez.
Carlos Zea Díaz
Carlos Abel Tarazona Aranda
Jafeth Jesús Sánchez Sánchez
Ricardo Rito Anguiano
Benjamin Beroiza Aguilar
Carlos Nassif Trejo Garcia
Rodrigo Rodolfo Rubio Haro
Programa que calcula los primeros 100.000 primos (combina un for para recorrer los números y un do while para encontrar el primer divisor y descartar que es primo.
#include <stdlib.h> int main(void) { int totalPrimosEcontrados; int total = 100000; int numeroEstudiar; int divisor; int encontradoDivisor; totalPrimosEcontrados = 0; for (numeroEstudiar = 1; numeroEstudiar <= total; numeroEstudiar++) { divisor = 1; encontradoDivisor = 1; do { if(divisor > 1 && divisor < numeroEstudiar) if (numeroEstudiar % divisor == 0) encontradoDivisor = 0; divisor++; } while (encontradoDivisor == 1 && divisor < numeroEstudiar); if (encontradoDivisor == 1) { totalPrimosEcontrados++; printf("[%d] Encontrado número primo\n", numeroEstudiar); } // else // printf("[%d] no es primo\n", numeroEstudiar); } printf("Total primos encontrados del 1 al %d, = %d\n", total, totalPrimosEcontrados); return (0); }
Salida
Hice una Tabla de multiplicar.
#include <stdio.h> int main(){ int num = 6; int num2 = 10; int res; for(int i = 0; i <= num2; i++){ res = i * num; printf("%d x %d = %d \n", num,i,res); } }
OutPut:
6 x 0 = 0 6 x 1 = 6 6 x 2 = 12 6 x 3 = 18 6 x 4 = 24 6 x 5 = 30 6 x 6 = 36 6 x 7 = 42 6 x 8 = 48 6 x 9 = 54 6 x 10 = 60
gran trabajo
Excelente
Los videos de los robots están muy cool, deberías hacer un curso sobre ello. :)
Bucle for
Este bucle funciona exactamente igual que el while, la diferencia es que es más "ordenado" y normalmente se usa cuando sabemos cuantas iteraciones queremos hacer.
Ejemplo ciclo for:
#include <stdio.h> int main() { int n = 30; for(int i=0; i < n; i++) printf("el valor actual de i es %d\n",i ); return 0; }
La sintaxis es la siguiente : for (contador; condicion; adicion o sustraccion) Tambien se podría leer así : para "i=0", tal que i sea menor que n y "mientras sumamos uno a i"
¿Cuándo usar while y cuándo usar for?
En linux en la consola se puede hacer eso del int = 0 desde el ciclo for sin error en compilación
A mi tambien me funciono declarar i dentro del ciclo for, uso linux
si se tiene clara la cantidad de veces que se va a iterar, pues podemos usar el FOR en lenguaje c
Hola a todos ¿He tratado de hacer un cronómetro y veo que es muy fácil con la librería Windows.h el problema es que yo uso Linux saben como lo podría lograr? tambien tarte con time.h pero hasta donde yo sé esa libreria mide el tiempo de ejeucion dentro de la pc, no es tal cual un cronómetro
Programa simula un temporizador que va de 100000 a 0 segundos
Ejecución
#include <stdio.h> //Programa simula un temporizador que va de 100000 a 0 segundos int main(){ int i; int contador=100000; int tiempoRestante=100000; printf("Se te termina el tiempo\n\n"); for(i = 0; i <= contador; ++i){ printf("Tienes %d segundos \r",tiempoRestante); tiempoRestante=tiempoRestante-1; } printf("\nYa no tienes tiempo, perdiste\n"); return (0); }```
Hola, he hecho una version mas sencilla de tu codigo que ejecuta la misma orden:
#include <stdio.h> int main() { int tiempo_restante; for (tiempo_restante = 100000 ; tiempo_restante >= 0; tiempo_restante -= 1) { printf("tu tiempo restante es: %d \n", tiempo_restante); } return 0; }
Ejemplo de while
#include <stdio.h> int main() { unsigned int cash, limit=3000,cFiveHundred=0,cOneHundred=0,cTwoHundred=0,cFifty=0,cten=0,cOne=0; printf("\t*******************************\n"); printf("\t******** CAJERO ATM *********\n"); printf("\t*******************************\n"); printf("\n\t¿Cuánto deseas retirar?\n\t"); scanf("%u", &cash); while(cash>0){ switch(cash){ case 500 ... 3000: cFiveHundred++; cash-=500; break; case 200 ... 499: cTwoHundred++; cash-=200; break; case 100 ... 199: cOneHundred++; cash-=100; break; case 50 ... 99: cFifty++; cash-=50; break; case 10 ... 49: cten++; cash-=10; break; case 1 ... 9: cOne++; cash-=1; break; default: printf("\n\tLo siento :( pero sobrepasas el limite."); cash=0; break; } } printf("\nAqui tienes tus \n%d billes de 500, \n%d billetes de 200, \n%d billetes de 100, \n%d billetes de 50, \n%d monedas de 10, \n%d monedas de 1 peso\n\t Gracias por su eleccion", cFiveHundred, cTwoHundred, cOneHundred, cFifty, cten,cOne); return 0; }
excelente de hecho para mi proyecto de semestre de este año tengo que hacer un robot zumo con seguidor de linea, con sensor ultrasonico, siplay lcd,.... si todo sale bien lo subire aca al final del curso!!
📘Ciclo FOR en C
🔹 ¿Qué es?
✨ Repite un bloque de código un número definido de veces.
✨ Muy útil para recorrer arreglos o estructuras de datos.
✨ Permite controlar fácilmente la cantidad de iteraciones.
🔹 Estructura básica
for (inicialización; condición; incremento) {
// Código que se repite
}
📍 Ejemplo:
for (int i = 0; i < n; i++) {
printf("El valor de i es %d\n", i);
}
🔑 Partes del FOR:
entonces con el for no es necesario que declare la variable "i"? ya queda declarada en el for?
Hola, ytengo una pregunta muy basica, pero la quiero hacer y no quedarme con la duda....En todos las clases hasta esta, el codigo termina con " return 0; ". ¿Por que en estae codigo con FOR no lo lleva al final ? Gracias
For :)
#include <stdio.h> int main() { int n = 11; int i; printf("Numeros del 1 al 10\n"); for(i = 1; i < 11; i++) { printf("n es: %i \n", i); } }```
El ciclo for es una estructura que se utiliza para ejecutar un bloque de código un número determinado de veces. Código donde te pregunta el valor de n y lo imprime con ciclo for:
#include <stdio.h> main (){ int i,n; printf ("Dime un numero:\n"); scanf ("%d", &n); for (i=0; i<n; i++){ printf ("El valor actual de i es:%d \n",i); } return 0; }
Interesante, no sabia que C ya no te dejaba declarar la variable dentro del for
Copie y pegué el mismo código pero al momento de probarlo solo me sale que el valor de 1 es 0 en vez de la cuenta del 1 al 30
#include <stdio.h> int n; int main(int argc, char const *argv[]) { for (int i = 0; i < 10; i++) { printf("i: %d\n", i); } return 0; }
A mi se me ocurrió hacer un programa que muestre la serie de Fibonacci pero que omita los números primos de la misma, me costó un poco pero lo logré