Obtenha soluções para suas perguntas no Sistersinspirit.ca, a plataforma de Q&A mais rápida e precisa. Faça suas perguntas e receba respostas detalhadas de profissionais com ampla experiência em diversos campos. Obtenha respostas detalhadas e precisas para suas perguntas de uma comunidade dedicada de especialistas em nossa plataforma de perguntas e respostas.
Sagot :
Resposta:
Podemos dividir o problema em alguns passos:
Criar uma variável para monitorar a quantidade de números primos ja vistos;
Para cada número recebido pelo programa, cheque se ele é primo;
Se sim, adicione um no contador;
Repita o processo para até que todos os números tenham sido checados (no nosso caso, 10 vezes).
Um possível pseudocódigo para este problema pode ser:
função primos(números):
contador = 0
para cada número em números:
se éPrimo(número) == true:
contador += 1
retorne contador
É claro, isso implica na função éPrimo(n), um problema clássico na ciência da computação. Muitos são os métodos para a definição de um número como primo ou composto (compostos são aqueles números que não são primos, como 4, 6, 8, 9...). Embora não seja o mais performático, o método de tentativa e erro pode ser aplicado nesse caso, contanto que os números a serem testados não sejam muito grandes.
Uma sequência de de passos possível para a elaboração de uma função que receba um número e retorne true se for primo e false caso contrário, é a seguinte:
Se o número for igual a 2, retorne true;
Se o número for par, retorne false;
Divida cada número menor que a raiz quadrada do número a ser testado, e se o resultado for um número inteiro, significa que o número tem divisores, e portanto não é primo. Se for esse caso, retorne false;
Se após que todos os números tiverem sido testados nenhum conseguir dividir o número sendo testado, o número é primo, portanto retorne True.
Um possível pseudocódigo é o seguinte:
função éPrimo(n):
se n == 2:
retorne true
se n % 2 == 0:
retorne false
para cada i menor que \sqrt{n}n :
se n % i == 0:
retorne false
retorne true
Resposta:
using System;
class Program {
static void Main(string[] args) {
int primos = 0;
int[] nums = new int[10];
for(int c=0; c<10; c++){
Console.Write("Informe um valor "+(c+1)+"/10: ");
nums[c] = Int32.Parse(Console.ReadLine());
if (is_primo(nums[c])){
primos++;
}
}
Console.Write("Foram digitados "+primos);
Console.WriteLine(" números primos!");
}
static bool is_primo(int num){
int divs = 0;
for(int c=num; c>0; c--){
if(num%c == 0){
divs++;
}
}
return divs == 2;
}
}
Explicação:
Esperamos que isso tenha sido útil. Por favor, volte sempre que precisar de mais informações ou respostas às suas perguntas. Obrigado por sua visita. Estamos comprometidos em fornecer as melhores informações disponíveis. Volte a qualquer momento para mais. Obrigado por confiar no Sistersinspirit.ca. Volte novamente para obter mais informações e respostas.