Ir ao conteúdo
  • Cadastre-se

Posts recomendados

  • Moderador
Postado

Caro usuário,

 

Seja bem-vindo ao Clube do Hardware.

 

No intuito de servir como fonte de pesquisa no caso de instituições de ensino, informamos que incorrer no resolvimento por completo de questões relacionadas a disciplinas escolares de cursos técnicos e faculdades podem ser revistas e removidas pela Equipe de Moderação do Clube do Hardware.

 

Para sanar dúvidas sobre esse tipo de problema, por gentileza, publique o passo a passo do desenvolvimento da questão, projeto, monografia ou conteúdo em dúvida para que possamos analisar se a resposta está correta ou não, ou para que possa ser auxiliado com a dúvida no desenvolvimento do exercício.

 

Infelizmente, não há como resolver os trabalhos pelos usuários. O objetivo do Clube do Hardware é auxiliar seus usuários a encontrar soluções para que possam sanar suas dúvidas, e não de trazer soluções prontas para seus usuários. Além disso, copiar e colar respostas que não são de autoria própria do qualquer usuário é considerado plágio, o que é ilegal.

 

Esperamos que compreenda.

 

Atenciosamente,

Equipe Clube do Hardware

  • Curtir 1
Postado

1) Escreva um algoritmo que calcule o número de notas e de moedas que deve ser dado de troco para um pagamento efetuado. O algoritmo deve ler o valor a ser pago e o valor efetivamente pago. Supor que o troco seja dado em notas de 50, 20, 10, 5, 2 e 1 real.

Resposta:

 

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

 

int main()

{

    setlocale(LC_ALL,"Portuguese");

 

    int valor, valorpago, cem, cinquenta, vinte, dez, cinco, dois, um;

 

    printf("Digite o valor do saque \n R:");

    scanf("%d", &valor);

 

    printf("Digite o valor que foi entregue \n R:");

    scanf("%d", &valorpago);

 

    valorpago = valorpago - valor;

 

    cem = valorpago/100;

    valorpago = valorpago,cem;

 

    cinquenta = valorpago/50;

    valorpago = valorpago,cinquenta;

 

    vinte = valorpago/20;

    valorpago = valorpago,vinte;

 

    dez = valorpago/10;

    valorpago = valorpago,dez;

 

    cinco = valorpago/5;

    valorpago = valorpago,cinco;

 

    dois = valorpago/2;

    valorpago = valorpago,dois;

 

    um = valorpago/1;

 

    printf("O troco sera com %d notas de 100, %d notas de 50, %d notas de 20, %d notas de 10, %d notas de 5, %d notas de 2 e %d moedas de 1", cem, cinquenta, vinte, dez, cinco, dois, um);

 

 

    return 0;

}

adicionado 0 minutos depois

2) Escrever um algoritmo que gera e escreve os 4 primeiros números perfeitos. Um número perfeito é aquele que é igual à soma dos seus divisores. Ex: 6 = 1+2+3, 28 = 1+2+4+7+14.

Resposta:

 

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

 

 

int numeroperf(int n){

    int i, soma = 0;

    for(i = 1; i <= n/2; i++){

        if(n % i == 0)

            soma += i;

    }

    if(soma == n)

        return 1;

    else

        return 0;

}

void divisores(int n){

    int i;

    printf("%d = ", n);

    for(i = 1; i < n; i++){

        if(n % i == 0)

            printf("%d, ", i);

    }

    printf("\n");

}

int main() {

    int quantidade = 0, perfeito, i = 1;

    while(quantidade < 4){

        perfeito = numeroperf(i);

        if(perfeito){

            quantidade++;

            printf("%d: ", quantidade);

            divisores(i);

        }

        i++;

        if(i % 50000 == 0)

            printf("%d\n", i);

    }

    return 0;

}

adicionado 0 minutos depois

Faça um algoritmo que a partir de dois vetores R e S, com 10 e 20 posições respectivamente, faça as seguintes funções:

a) preencher os vetores com números aleatórios;

b) gerar um vetor X correspondente à união dos vetores R e S;

c) gerar um vetor Y correspondente à interseção de R e S.

Resposta:

 

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

 

 

int main()

{

    setlocale(LC_ALL,"Portuguese");

 

    int r[10], s[20], aux, t, i, n, uniao[30], interse[10];

 

    srand(40);

    for(i=0;i<10;i++){

        r = rand()% 40;

    }

    for(i=0;i<20;i++){

        s = rand()% 40;

    }

 

    for(i=0;i<10;i++){

        for(n=0;n<10;n++){

            if(r[n]>r){

               aux = r[n];

               r[n] = r;

               r = aux;

             }

           }

         }

    printf("Ordem primeiro vetor: ");

    for (int i=0; i<10; ++i){

          printf("%d ", r);

     }

 

    for(i=0;i<20;i++){

        for(n=0;n<20;n++){

            if(s[n]>s){

               aux = s[n];

               s[n] = s;

               s = aux;

             }

           }

         }

    printf("\nOrdem segundo vetor: ");

    for (int i=0; i<20;i++){

          printf("%d ", s);

     }

     printf("\nUnião: ");

     for(i=0; i<10; i++){

     uniao = r;

}

    for (n=0;n<20;n++){

    uniao = s[n];

    i++;

}

    for (n=0;n<30;n++){

    printf("%d, ", uniao[n]);

}

 

 

 

    printf("\nInterseção dos vetores: ");

    for(n=0;n<20;n++){

        for(i=0;i<10;i++){

            if(s[n]==r){

              interse[t] = r;

              printf("%d ", interse[t]);

              t = t + 1;

             }

        }

    }

   

    return 0;

}

  • Obrigado 1
  • Confuso 1
Postado

Alguem poderia me dar uma ajuda nesse exercicio:

 

"Fazer um programa que leia duas sequências de N inteiros em dois vetores distintos, digamos, V e W e verifique se um vetor é uma permutação do outro, isto é, eles tem os mesmos elementos mas em ordens diferentes. Não vale ordená-los previamente."

  • Curtir 1
Postado

Acho que não devia "aproveitar" um tópico para propor outro. Use um título significativo e crie um novo tópico. Essa é a ideia do forum: ajudar pessoas com problemas semelhantes. Apesar de ainda poder ser localizado pelos programas de busca não vai ser por quem está apenas vendo os títulos e eventualmente pode te ajudar.

 

  • Obrigado 1
Postado

@XIXX     você vai preencher os dois vetores de tamanho definido pelo usuário ,  e depois use dois loop's para verificar os números , e se em um vetor um número não estiver no outro vetor , então use o comando break , para parar , pois já viu que não são permuta .

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...