Ir ao conteúdo
  • Cadastre-se

C Desenvolver Programa com Vetores aleatórios


Ir à solução Resolvido por AdrianoSiqueira,

Posts recomendados

Não estou conseguindo fazer esse programa, alguém pode me ajudar?

image.png.f3101eecfbb2f24ea3245a1946056674.png

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void main ()

{
    int x [300];
    srand (time(NULL));
   for (int i = 0; i<300; i++){
       x[i]= 100 + (rand()%400);
   }
       
       for (int i=0; i<300; i++){
           printf ("\n%d", x[i]);
       }

   
}

 

Link para o comentário
Compartilhar em outros sites

  • Moderador

Caro usuário,

 

Seja bem-vindo ao Fórum do 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 Fórum 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

Link para o comentário
Compartilhar em outros sites

int y[150] = {0};//declare esse novo vetor;

você pode fazer um laço variando de 0 até 300 e calcular y da seguinte maneira:
y[i/2]+=x[i];

Cada elemento do vetor y será a soma de dois elementos seguidos de x.
Não sei se é isso que procurava. Não entendi parte do [1,-1]?

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Solução

Algo assim deve resolver:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void imprimirArray(char nome[], int array[], int maximo) {
    printf("%s [ ", nome);
    for (int i = 0; i < maximo; ++i) {
        printf("%i, ", array[i]);
    }
    printf("] \n");
}

int main() {
    int maximo = 300;
    int vetor[maximo];
    int vetorSoma[maximo - 1];

    srand((unsigned) time(NULL));

    // Inicializa o primeiro vetor
    for (int i = 0; i < maximo; ++i) {
        vetor[i] = rand() % 400 + 100;
    }

    // Preenche o segundo vetor
    for (int i = 0; i < maximo - 1; ++i) {
        vetorSoma[i] = vetor[i] + vetor[i + 1];
    }

    // Imprime todos
    imprimirArray("Vetor", vetor, maximo);
    imprimirArray(" Soma", vetorSoma, maximo - 1);
    return 0;
}

Dica: Não crie um vetor de 300 posições logo de cara, faça algo menor, por exemplo com 10 posições. E ao invés de já preencher com valores aleatórios, preencha-o com valores fixos, assim fica mais fácil detectar problemas. Quando você ver que está tudo certo, aí você muda o tamanho e os valores que serão atribuídos.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

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