Ir ao conteúdo

Posts recomendados

Postado

Estou com uma duvida teórica, preciso fazer um programa que :

 

na entrada   - exibe um numero inteiro N indicando o numero de pessoas em uma fila ,com 2 ≤ N ≤ 30;

                      - N inteiros que representam as posiçoes X1, X2, . . . XN de cada pessoa na fila, com X1 ≤ X2 ≤ . . . ≤ XN 

                     - numero inteiro I  (representa o indice de um indivıduo doente),  com 1 ≤ I ≤ N  esta doença é trasmitida  quando a distancia entre pessoas for  <= 2 metros.

 

 

 na saída : numero de pessoas doentes

 

Algum poderia me indicar a estrutura ou material teórico para incorporara esses dados ? procurei mas nao encontrei , preciso do tamanho e posição na fila.
 

Postado
3 horas atrás, lidy ane disse:

na entrada   - exibe um numero inteiro N indicando o numero de pessoas em uma fila ,com 2 ≤ N ≤ 30;

                      - N inteiros que representam as posiçoes X1, X2, . . . XN de cada pessoa na fila, com X1 ≤ X2 ≤ . . . ≤ XN 

                     - numero inteiro I  (representa o indice de um indivıduo doente),  com 1 ≤ I ≤ N  esta doença é trasmitida  quando a distancia entre pessoas for  <= 2 metros.

 

 

 na saída : numero de pessoas doentes

 

Algum poderia me indicar a estrutura ou material teórico para incorporara esses dados ? procurei mas nao encontrei , preciso do tamanho e posição na fila

 

Isso faz pouco sentido. Antes de tudo não fala sobre a passagem do tempo e não vejo como modelar isso sem considerar o tempo.

 

Por outro lado nada fala sobre a distância entre as pessoas na fila, a taxa de chegada, os tempos de atendimento. 

Se as pessoas ficarem a 2.5m de distância na fila não haverá contaminação...

 

Que material teórico poderia dar solução a uma coisa tão vaga? Há todo um campo de Teroria das Filas, com vasta bibliografia. Eu por exemplo estudei isso.

 

Há muitos recursos e modelos sobre dispersão de partículas, sobre tempos de espera.

 

E há muito material sobre estruturas de dados e modelos abstratos.

 

Mas não sei o que fazer com enunciado desses.

  • Curtir 1
Postado

@arfneto Concordo com você, me desculpe  mas o enunciado do exercício que tenho que fazer é o seguinte , é exatamente assim :  

 

Sabe-se que uma dada doença se espalha de uma pessoa infectada para outra nao infectada sempre que a distancia entre elas for menor ou igual a 2 metros. Assim, um conjunto de pessoas (dependendo da pessoa que foi infectada inicialmente) sera contaminado. O tamanho desse conjunto sera chamado de numero final de pessoas infectadas. Lembre-se que a pessoa originalmente contaminada faz parte do conjunto de pessoas infectadas. Alem disso, a partir do momento que uma pessoa e infectada, ela tambem infecta todos os que estão a uma distancia menor ou igual a 2 metros que nao estavam contaminados.

 

Escreva um programa em C que, dada uma fila de pessoas, com os respectivos valores de Xi para cada uma delas, e o índice da pessoa contaminada inicialmente, calcule o número total de pessoas infectadas.

Entrada • Na primeira linha ha um numero inteiro N indicando o numero de pessoas na fila.

• A segunda linha contem os N inteiros que representam as posiçãoes X1, X2, . . . XN de cada pessoa na fila.

• Na terceira linha ha um numero inteiro I que representa o índice do indivıduo contaminado.

Obs: • 2 ≤ N ≤ 30; 1

• X1 ≤ X2 ≤ . . . ≤ XN ;

• 1 ≤ I ≤ N. 3

Saıda - o programa devera mostrar o numero de pessoas infectadas.

  • Curtir 1
Postado

Isso é uma bobagem.

 

Qual a distância entre as pessoas na fila? 

O alcance da contaminação vai depender da distância do indivíduo contaminante. E a posição do contaminado na fila vai contaminar um círculo de 2m. Só que a fila é considerada linear até prova em contrário. E assim o total de contaminados vai sr função da distância entre as pessoas na fila e  posição do contaminado estar antes de metade dessa distância, certo? Uma conta óbvia. Considere um índice delta = a quantidade de pessoas por metro na fila e faça as contas em função desse delta e da distância do contaminado em relação à borda da fila

Postado
3 horas atrás, lidy ane disse:

Entrada • Na primeira linha ha um numero inteiro N indicando o numero de pessoas na fila.

• A segunda linha contem os N inteiros que representam as posiçãoes X1, X2, . . . XN de cada pessoa na fila.

• Na terceira linha ha um numero inteiro I que representa o índice do indivıduo contaminado.

Obs: • 2 ≤ N ≤ 30; 1

• X1 ≤ X2 ≤ . . . ≤ XN ;

• 1 ≤ I ≤ N. 3

Saıda - o programa devera mostrar o numero de pessoas infectadas

 

Tentei mesmo levar a sério esse troço, mas não dá. Alem da bobagem de tentar dar um aspecto sério a um texto bobo:

  • não toca no assunto da distância esperada entre as pessoas na fila.
  • não considera que a fila anda e que o contágio não é instantãneo
  • se tem N pessoas na fila, fica a critério do leitor imaginar o que é uma lista de N posições das pessoas na fila. Haverá não-pessoas na fila então? ovelhas? pombos? máquinas de café e biscoitos? Se só tem pessoas na fila então essa lista das posições vai ter N pessoas e N posições. Genial. Será um grupo em particular de N pessoas dentro de um universo maior de pessoas na fila? Vão estar numeradas de 1 a N, de N a 1 ou o que? Não, porque a fila contem N inteiros e a fila tem N pessoas. Veja que eu tentei.

Acho que deve discutir com o grupo de cientistas que elaborou isso e tentar achar um sentido.

  • Curtir 1
  • Membro VIP
Postado
7 horas atrás, lidy ane disse:

• Na primeira linha ha um numero inteiro N indicando o numero de pessoas na fila.

 

Ex.: 5. (Terão 5 pessoas na fila);

 

 

 

7 horas atrás, lidy ane disse:

• A segunda linha contem os N inteiros que representam as posiçãoes X1, X2, . . . XN de cada pessoa na fila.

 

Pelo que suponho, essas "posições" seriam a algo como um eixo num plano cartesiano.

 

Ex.: 1, 4, 5, 7, 11 (a primeira pessoa está a 1 metro da origem; a segunda está a 4 metros; terceira 5 etc);

 

 

 

7 horas atrás, lidy ane disse:

• Na terceira linha ha um numero inteiro I que representa o índice do indivıduo contaminado.

 

Ex. 1 (a segunda pessoa está infectada);

Ex. 0 (a primeira pessoa está infectada);

 

 

 

 

7 horas atrás, lidy ane disse:

Obs:

• 2 ≤ N ≤ 30; 1

• X1 ≤ X2 ≤ . . . ≤ XN ;

• 1 ≤ I ≤ N. 3

 

A primeira linha significa que terá pelos menos 2 pessoas e no máximo 30;

A segunda linha diz que a distância sempre vai aumentando a medida que vai aumentando a posição;

A terceira linha diz que qualquer um pode ser o infectado inicial.

 

 

 

7 horas atrás, lidy ane disse:

Saıda - o programa devera mostrar o numero de pessoas infectadas.

Pegando o exemplo inicial:

Se 1, terão 3 pessoas infectadas no total;

Se 0, terá apenas 1 pessoa (a própria).

 

 

 

3 horas atrás, arfneto disse:

Acho que deve discutir com o grupo de cientistas que elaborou isso e tentar achar um sentido.

 

De um modo resumido: a definição do problema não precisa ser verossimilhante. É como uma filme ou série... precisa entrar no escopo do contexto.

 

Postado

image.png.18650d55c977c52474840858e91aa981.png

12 minutos atrás, Simon Viegas disse:

A segunda linha diz que a distância sempre vai aumentando a medida que vai aumentando a posição;

 

Não vejo onde está escrito que a posição da pessoa na fila --- que é o que está de fato escrito --- é a distância a partir de algum ponto de referência. Conseguiu ler ali que Xé a distância, em metros, da pessoa do início da fila? Não consigo. 

 

16 minutos atrás, Simon Viegas disse:

De um modo resumido: a definição do problema não precisa ser verossimilhante. É como uma filme ou série... precisa entrar no escopo do contexto

 

 

:) de um modo resumido: não consigo.

 

  • Haha 1
  • Membro VIP
Postado
2 minutos atrás, Mauro Britivaldo disse:

Não porque X1 menor que X2 que todo X é diferente.

 

Não entendi... está comentando em relação a o quê? Poderia também dar exemplos?

 

Postado
1 minuto atrás, Mauro Britivaldo disse:

Não porque X1 menor que X2 que todo X é diferente

 

@Simon Viegas E esse ponto que Mauro falou é pra repetir:

 

image.png.9a1ba37398e22a4608260f41c2c61cb7.png

 

Então todos os X podem ser iguais. 
 

29 minutos atrás, Simon Viegas disse:

precisa entrar no escopo do contexto

 

Como entrar nesse contexto? Estariam todos uns sobre os outros na fila? Estariam em círculo à mesma distância? E se fosse pequena :) ? 

 

Eu desisti,

 

  • Curtir 1
  • Membro VIP
Postado

Não tinha reparado no "menor ou igual". Que loucura!!!  kkkkkkkkkkkk

 

2 minutos atrás, arfneto disse:

Eu desisti,

 

Mas eu sou brasileiro... pera...

 

adicionado 3 minutos depois

Não, não.. desisto também!!!

  • Haha 1
Postado
Em 28/05/2020 às 12:17, lidy ane disse:

Dado o enunciado, fazer um programa em C que :

 

na entrada  

 

- exibe um numero inteiro N indicando o numero de pessoas em uma fila ,com 2 ≤ N ≤ 30;

  - N inteiros que representam as posiçoes X1, X2, . . . XN de cada pessoa na fila, com X1 ≤ X2 ≤ . . . ≤ XN 

   - numero inteiro I  (representa o indice de um indivıduo doente),  com 1 ≤ I ≤ N  esta doença é trasmitida  quando a distancia entre pessoas for  <= 2 metros.

 

 

 na saída : numero de pessoas doentes

 

Preciso de ajuda para corrigir meu codigo: 

#include <stdio.h>


void covid (){

    //Dado N pessoas em uma linha reta ,COM 2 ≤ N ≤ 30;
    int N [30];
    // i acessa a posição da pessoa na fila
    int i;
    //indice de contaminaçao
    int I;

    for(i =0; i<30 ; i++){
        printf("%i", i);
        scanf("%i", &N );
    }

      //Transmissao distancia entre pessoas for  <= 2 metros
      if (i> 2||i =2){
        printf("%d " ,N  );
      }
       
       //numero inteiro I que representa o indice do indiv´ıduo contaminado.,1 ≤ I ≤ N.
       ??? 

    }

int main(){
    return 0;

}

Citação

 

 

 

adicionado 10 minutos depois
10 minutos atrás, lidy ane disse:

 

nao esta aparecendo mas nos printf é N

  • Confuso 1

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!