Ir para conteúdo
Fórum Script Brasil
  • 0

Concatenação de numeros em C


Carlos Henrique Biazoto

Pergunta

Galera...

to tentando fazer um código em C, mas não to conseguindo..podem me ajudar.

Faça um programa que leia um numero natural n com quatro algarismos: x e o primeiro algarismo, y e o segundo algarismo, z e o terceiro algarismo e w e o quarto algarismo. Seu programa devera imprimir os valores de

i. wz + xy;

ii. xy ∗ ww + z.

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
Galera...

to tentando fazer um código em C, mas não to conseguindo..podem me ajudar.

Faça um programa que leia um numero natural n com quatro algarismos: x e o primeiro algarismo, y e o segundo algarismo, z e o terceiro algarismo e w e o quarto algarismo. Seu programa devera imprimir os valores de

i. wz + xy;

ii. xy ∗ ww + z.

use uma string para obter um número de quatro digitos;

char num[5];

onde se usuario digita 1053

nome[0] = '1', nome[1] = '0', nome[2] = '5', nome[3] = '3';

[1][0][5][3]

existe uma função no header stdlib.h chamada atoi(), que converte string para números

para um algoritmo que supra suas necessidades você precisa saber manipular bem strings, pois atoi() converte toda string(e não char) em numero.

Você precisará de quebrá-las e dividir em strings menores. á te dei uma dica, poste seu código e te ajudarei melhor.

Editado por Dan Oliveira
Link para o comentário
Compartilhar em outros sites

  • 0

Ta ai o exercicio e o código..

Faça um programa que leia um numero natural n com quatro algarismos: x e o primeiro algarismo, y e o segundo algarismo, z e o terceiro algarismo e w e o quarto algarismo. Seu programa devera imprimir os valores de

i. xy;

ii. xz;

iii. wz + xy;

iv. xy ∗ ww + z.

as duas primeiras, eu consegui no printf, mas as duas ultimas não consegui.

tentei somar direto no printf, mas dá um valor muito estranho

printf("o valor de :%d%d%d%d\n",w,z+x,y);

Código:

#include <stdio.h>

int main()

{

int n,x,y,z,w;

scanf("%d", &n);

x=n/1000;

y=n%1000/100;

z=n%100/10;

w=n%10;

printf("o valor de xy :%d%d\n",x,y);

printf("o valor de xz :%d%d\n",x,z);

printf("o valor de :%d%d%d%d\n",w,z+x,y);

return 0;

}

Galera...

to tentando fazer um código em C, mas não to conseguindo..podem me ajudar.

Faça um programa que leia um numero natural n com quatro algarismos: x e o primeiro algarismo, y e o segundo algarismo, z e o terceiro algarismo e w e o quarto algarismo. Seu programa devera imprimir os valores de

i. wz + xy;

ii. xy ∗ ww + z.

use uma string para obter um número de quatro digitos;

char num[5];

onde se usuario digita 1053

nome[0] = '1', nome[1] = '0', nome[2] = '5', nome[3] = '3';

[1][0][5][3]

existe uma função no header stdlib.h chamada atoi(), que converte string para números

para um algoritmo que supra suas necessidades você precisa saber manipular bem strings, pois atoi() converte toda string(e não char) em numero.

Você precisará de quebrá-las e dividir em strings menores. á te dei uma dica, poste seu código e te ajudarei melhor.

Link para o comentário
Compartilhar em outros sites

  • 0

se você opta por não usar string

int num; // numeros de 4 algarismos, de usar uma validação para que le tenha 4 algarismos

int x, y, z, w;

scanf("%d", num);

x = num/1000;

y = (num - x) / 100;

z = (num - (x+y))/10;

w =(num - (x+y+z);

testa aí. agora assim para calcular aquela parte vai requer alguns cálculos.

Link para o comentário
Compartilhar em outros sites

  • 0

Então ainda não aprendi nas aulas da facul a utilizar string..hehehe

Usando o exemplo de codigo q me enviaste, não consegui o resultado esperado.

fiz o teste de mesa e apareceu valores diferentes do q estavo utilizando

Exemplo:

Se eu jogar o numero 3278 para num,

num=3278

o primeiro algarismo teria que ser: x=3

o segundo algarismo teria que ser: y=2

o terceiro algarismo teria que ser: z=7

o quarto algarismo teria que ser: w=8

x=num/1000;

x=3278/1000

x=3

y=(num -x)/100;

Y=(3278-X)/100;

Y=(3278-3)/100;

Y= 3275/100

Y=32

quando fizesse um printf com x,y

iria aparecer o numero: 332

sendo que o correto tem q ser 32

sendo o=x e o 2=y.

eu não consegui fazer é o:

iii. wz + xy;

iv. xy ∗ ww + z.

se você opta por não usar string

int num; // numeros de 4 algarismos, de usar uma validação para que le tenha 4 algarismos

int x, y, z, w;

scanf("%d", num);

x = num/1000;

y = (num - x) / 100;

z = (num - (x+y))/10;

w =(num - (x+y+z);

testa aí. agora assim para calcular aquela parte vai requer alguns cálculos.

Link para o comentário
Compartilhar em outros sites

  • 0

vamos usar sua lógica depois de uma entrada de um usuário; 2365

x = 2;

y = 3;

z = 6;

w = 5;

xy teria o valor de 23;

então faça estas atribuições e crie algumas variáveis

xy = x * 10 + y;

wz = w * 10 + z;

ww = w * 10 + w;

seu programa ficará...

#include <stdio.h>
int 
main()
{
    int n, x, y, z, w, wz, xy, ww;
    scanf("%d", &n);
    x=n/1000;
    y=n%1000/100;
    z=n%100/10;
    w=n%10;
    //atribucoes especiais
    xy = x * 10 + y;
    wz = w * 10 + z;
    ww = w * 10 + w;

    printf("o valor de xy :%d%d\n",x,y);
    printf("o valor de xz :%d%d\n",x,z);
    printf("o valor de wz + xy: %d + %d = %d\n",wz,xy, wz+xy);
    printf("o valor de xy * ww + z: %d * %d + %d = %d\n", xy, ww, z, xy*ww+z);
    return 0;
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...