es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Programa para imprimir los primeros m números primos dentro de los primeros n números enteros positivos.

Escribe un programa para generar e imprimir los primeros m números primos en los primeros n enteros positivos.

Ejemplo:
n=10, m=2
En un rango de números naturales del 1 al 10, debo generar m=2 (2 números primos positivos).
Entrada: 10 2
Salida: 2 3

Mi código:
Nota: Intenta responder en java

import java.util.Scanner;

class Main5{
static Scanner sc=new Scanner(System.in);

static boolean isPrime(int n){
//ya que 0 y 1 no son primos, devuelve falso.
if(n==1||n==0) return false;

//ejecuta un bucle desde 2 hasta n-1
for(int i=2; i<=n/2; i++){

//si el número es divisible por i, entonces n no es un número primo.
if(n%i==0)return false;
}
//de lo contrario, n es un número primo.
return true;
}

public static void main (String[] args){
int n=sc.nextInt();
int m=sc.nextInt();
//comprobar para cada número de 1 a N
for(int i=1; i<=n; i++){
if(i==m){
break;
}
//comprueba si el número actual es primo
if(isPrime(i)){
System.out.print(i + ” “);
}
}
}
}

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El código proporcionado es una solución válida en Java para generar e imprimir los primeros m números primos en los primeros n enteros positivos.

    Explicación:
    – En primer lugar, definimos una función isPrime() para verificar si un número dado es primo o no. Devuelve true si el número es primo, de lo contrario devuelve false. Utilizamos una implementación básica para verificar la divisibilidad con números del 2 al n/2.
    – En la función main(), tomamos los valores n y m ingresados por el usuario.
    – Luego, iteramos sobre los números del 1 al n y verificamos si cada número es primo utilizando la función isPrime(). Si un número es primo, lo imprimimos y decrementamos m. Una vez que m se vuelve 0, salimos del bucle y dejamos de generar más números primos.
    – Finalmente, imprimimos la salida deseada, es decir, los primeros m números primos encontrados en el rango de 1 a n.

    Nota: El código asume que los valores de entrada dados de n y m son enteros positivos. No maneja entradas negativas o no enteras.

Comments are closed.