Ir ao conteúdo

Usando apenas 1 "for"


Andryas

Posts recomendados

Postado

Como faço para gerar a seguinte sequência, usando apenas 1 comando for:

Ex 1)Entrada do Usuario: 5

Saída Da Maquina: 1 2 3 4 5 4 3 2 1

Ex 2)Entrada do Usuario: 9

Saida da Maquina: 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1

Com 2 for, fica fácil ^_^

Mas e com 1?:wacko:

Postado

Você poderia usar 2 iteradores,funções matemáticas,um condicional,etc..

Em C++ você poderia fazer algo como:


#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>

using namespace std;

int gen()
{
static int i;
return ++i;
}

int main()
{
vector<int> arr(5);
int i = 1;
ostream_iterator<int> oit(cout, " ");
generate(arr.begin(), arr.end(), gen);
copy(arr.begin(), --arr.end(), oit);
copy(arr.rbegin(), arr.rend(), oit);
return 0;
}

Use a cabeça.

Att. regreth

Postado

Observe que, dado um numero, o for vai até o dobro dele menos 1.


int n;
int i, numero=0, condicao;
scanf("%d", &n);
condicao = n*2-1;
for(i=0; i<condicao; i++) {
if(i >= n)
numero--;
else
numero++;
printf("%d ", numero);
}

É só pensar um pouco.

Abraços!

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!