Principiante · bucles + acumulador
Suma de 1 a N
Lee n e imprime 1 + 2 + … + n. El patrón acumulador en su forma más pura — y una ocasión para conocer el atajo de Gauss.
Problema
Entrada: un entero n (1 ≤ n ≤ 10.000).
Salida: una línea con la suma de todos los enteros de 1 a n.
Ejemplo:
| Entrada | Salida |
|---|---|
5 | 15 |
Tu solución
Entrada personalizada para "Probar mi entrada"
La corrección se ejecuta por completo en tu navegador contra pruebas ocultas. Tu código se guarda localmente mientras escribes. Ctrl+Enter corrige.
¿Atascado? Pistas
Pista 1 — el acumulador
Declara int suma = 0; antes del bucle. Cada pasada hace suma += i; — ese es el patrón que reutilizarás en cada agregación que escribas.
Pista 2 — o sáltate el bucle
Gauss: la suma de 1..n es n * (n + 1) / 2. Intenta demostrarte por qué n * (n + 1) siempre es par.
Solución (¡inténtalo primero!)
int n = int.Parse(Console.ReadLine());
int suma = 0;
for (int i = 1; i <= n; i++)
{
suma += i;
}
Console.WriteLine(suma);
// la fórmula de Gauss — O(1), sin bucle
int n = int.Parse(Console.ReadLine());
Console.WriteLine(n * (n + 1) / 2);
Fíjate en la división entera de la fórmula: n * (n + 1) / 2 divide el producto, que siempre es par — así que nunca se pierde la fracción. Siguiente: Máximo de tres.