Corrigindo o código do sapropel:
Código:int N = 10; int resultadoFinal = 0; for( int i = 1; [color=red]resultadoFinal[/color] < N; i++ ) resultadoFinal += i;
peço desculpa se estiver errado mas o que ele quer não é somar todos os numeros anteriores a um numero dado?
o exemplo 10 outra vez: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45
no código que postei faz exactamente isso, soma ao resultadoFinal o numero em i, antes que este chegue a N
ou então percebi a pergunta mal =)
Defino máximo=6 ele vai somar, 1+2+3 = 6, e o ultimo numero é o 3.
Re-corrigindo o código do sapropel:
Penso que seja istoCódigo:int N = 10; int resultadoFinal; int [COLOR=Red]soma[/COLOR] = 0; for( int i = 1; [COLOR=red]soma[/COLOR] < N; i++ ) { soma += i; resultadoFinal = i; }
Como é que fazias isso?Não era preciso mais uma variável, bastava que se devolvesse o i-1 para obter o último número somado.
Como é que fazias isso?
int main() {
int i,soma=0,n;
printf("Qual o limite?");
scanf("%d",&n);
for (i=1;soma<n;i++)
soma+=i;
printf("O ultimo numero somado: %d",i-1);
return 0;
}
Então sempre precisas de mais uma variávelCom aquele código realmente não fazia, porque o i desaparece no fim do ciclo, mas podia fazer asism:
Código:int main() { int i,soma=0,n; printf("Qual o limite?"); scanf("%d",&n); for (i=1;soma<n;i++) soma+=i; printf("O ultimo numero somado: %d",i-1); return 0; }
Então sempre precisas de mais uma variável