Jump to content

[C] Ajuda: Progr. que leia 50 n.º menos o 1.º e último (Resolvido)


Recommended Posts

Posted

Boas 😉

Antes de mais bom ano  👍

Tenho um teste de programação em C para corrigir e sinceramente nem sei para onde me virar..

Estou a dar Matrizes e estou completamente a apanhar do ar, portanto, peço-vos aqui ajuda.

"Um programa que leia uma série de 50 números inteiros do teclado e que depois os escreva todos de novo no ecran, excepto o primeiro e o ultimo"

Alguma ideia?

Cumps 😉

Posted

supondo que o número de elementos é desconhecido (caso contrário usa-se um for) e que ele lê até ao final do input.

    int k,ant;
    scanf("%d %d",&k,&ant);
    while (scanf("%d",&k)) {
          printf("num: %d\n",ant);
          ant=k;
    }

Mas se é a correcção de um teste, talvez devesses usar algo mais "normal"..

Não faço ideia se podes usar feof(stdin) para testar o final do input ou não..

(Talvez te seja dado o número de elementos no ínicio, se for, basta-te ler o primeiro fora do for, e todos os outros (excepto um) dentro, e imprimi-los.

Ou então ler tudo para um vector começar na posição 1 (logo segundo número) e imprimir tudo até à posição n-2.

Posted
int i,a;
scanf("%d",a);
for (i=0;i<48;i++) {
  scanf("%d",&a);
  printf("%d\n",a);
}
scanf("%d",&a);

É lido 1 elemento (o primeiro) de seguida são lidos 48, e todos eles impressos. Lê-se outro elemento no final só para garantir que são todos lidos, mas é desnecessário no fundo.

Ou podem ler para um vector e no final imprimir o vector.

Posted

O Scanf é equivalente ao cin?

Sim, é mais ou menos equivalente.

O cin é em C++. Vós quereis em C ou em C++?

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

Boas 😉

Antes de mais bom ano  👍

Tenho um teste de programação em C para corrigir e sinceramente nem sei para onde me virar..

Estou a dar Matrizes e estou completamente a apanhar do ar, portanto, peço-vos aqui ajuda.

"Um programa que leia uma série de 50 números inteiros do teclado e que depois os escreva todos de novo no ecran, excepto o primeiro e o ultimo"

Alguma ideia?

Cumps 😉

a forma mais simples d fazer isso é ler os 50 numeros para o array e dps fazer um ciclo for que escreva no ecra a partir da segunda posicao do array ate a penultima. se nao sabes como fazer isso mais vale estudares, ou entao desiste da programaçao.

Posted

... se nao sabes como fazer isso mais vale estudares, ou entao desiste da programaçao.

Mas que é isto? Grande incentivo que lhe estás a dar...

Se não sabe aprende como toda a gente agora desistir? isso é para os fracos! 👍

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

É isso que vou tentando perceber.

Já agora, neste código:

int i,a;
scanf("%d",a);

for (i=0;i<48;i++) {
  scanf("%d",&a);
  printf("%d\n",a);
}

scanf("%d",&a);

O que faz o "d" aqui?

Posted
Em 01/01/2007 às 17:42, allskin disse:

Já agora, neste código:

int i,a;
scanf("%d",a);

for (i=0;i<48;i++) {
  scanf("%d",&a);
  printf("%d\n",a);
}

scanf("%d",&a);

O que faz o "d" aqui?

Deves-te referir ao %d...

Isso indica que está a ler um tipo de dados inteiro.

Se fosse %s seria uma string por exemplo. %c seria um caracter... etc..

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

Mas se já está declarado como int lá em cima, qual é a diferença?

Pois... Isso tens de perguntar a quem inventou isso.. 👍😉

Em algumas linguagens como C# ou Java não é necessário haver uma distinção dessas mas em C sim...

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted
Em 01/01/2007 às 17:40, Hipnoted disse:

Mas que é isto? Grande incentivo que lhe estás a dar...

Se não sabe aprende como toda a gente agora desistir? isso é para os fracos! 👍

acho k a parte do

Em 01/01/2007 às 17:36, mula_russa disse:

... se nao sabes como fazer isso mais vale estudares

é incentivo suficiente. Não te parece?

Posted

[OFFTOPIC]

Eu quando exponho uma dúvida não gosto que me digam "Olha vai estudar ou desiste". É disso que me referia.👍

Por mim não falo mais nisto.

[/OFFTOPIC]

"Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência"

Posted

Mas se já está declarado como int lá em cima, qual é a diferença?

Tu não estás a aprender C na escola, mas sim C++.

C++ é uma "extensão" de C, código de C funciona em C++, mas código de C++ não funciona em C.

Cin é exclusivo ao C++, scanf(); foi implementado no C, logo funciona em ambos.

Eu sugeria que procurasses ajuda na outra secção do forum.

Posted

Eh pa nós tamos a dar C++.  mula_russa se não queres ajudar mais vale estares calado não? Não sou moderador nem nada mas esse tipo de comentários não ajudam nada em qualquer fórum...Se nós não sabemos fazer o programa e viemos perguntar aqui é porque já andámos a procura no livro, inclusive eu que tenho além do manual escolar o C++ DeMystified de Kent da Osbourne.

Mais uma vez, se vens armado em stor dizer para estudarmos e não explicas nada (como acontece connosco e mete exercícios nos testes que nem sequer fizemos nem sabiamos que dava para fazer em C++) até podes continuar a falar e a postar spam...

É por essas atitudes que na nossa turma a nota mais alta foi a minha, que foi 6,3.

Posted

olha desculpem lá voltar a esta conversa. Mas isto irrita-me sinceramente! vais-me dizer que já andas-te a procura num livro e mais nao sei onde e que não encontras-te uma explicação de um ciclo for?! quanto a parte do se não queres ajudar mais vale estar calado eu já vos disse uma maneira , e bastante simples por sinal de fazer isso. agora se não estas com atençao ao que se diz aqui, muito provavelmente tb nao estas com atençao ao que ensinam nas aulas...

Eu não venho armado em nada. A unica coisa que vos disse foi, por outras palavras, se nao sabem fazer estudem e se nao kere estudar desistam...

E por favor. como diz o hipnoted "Por mim não falo mais nisto".

Peço desculpa pelo offtopic

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.