Buch Cover Buch Cover Buch Cover Buch Cover

Web-Code: - Webcode Help

Primzahlen (Algorithmen)

Schreiben Sie ein Programm, das eine gegebene Zahl daraufhin prüft, ob es sich um eine Primzahl (2, 3, 5, 7, 11, …) handelt.

0 Kommentare

Bitte melde dich an um einen Kommentar abzugeben

5 Lösung(en)

import java.util.Scanner;

public class PrimzahlCheck {
    public static void main(String[] args) {
        new PrimzahlCheck().top();     }
    
    void top(){
        long zahl = einlesenZahl();
        boolean istPrim = check(zahl);
        if(istPrim) {
            System.out.println(zahl + " ist eine Primzahl."); }
        else {
                System.out.println("Leider keine Primzahl (" + zahl + ") sorry!");  }
    } // end top()

    long einlesenZahl() {
        Scanner sc = new Scanner(System.in);
        System.out.print("Bitte Zahl eingeben: ");
        long zahl = sc.nextLong();
        return zahl;  }

    boolean check(long zahl) {
        if(zahl < 2) {
            return false; }
        if (zahl < 4) {
            return true;  }
        long moeglicherTeiler = 2;
        long wurzel = (long) Math.sqrt(zahl);
        while(moeglicherTeiler <= wurzel) {
           if(teilbar(zahl, moeglicherTeiler)) {
               return false;  }
           moeglicherTeiler = moeglicherTeiler + 1; }
        return true; }

    boolean teilbar(long zahl, long moeglicherTeiler) {
        long ganzZahlDivision = zahl / moeglicherTeiler;
        return ganzZahlDivision * moeglicherTeiler == zahl;   }
                             
}  // end of class PrimzahlCheck
                
package ch.santis.buch.kapitel9;

import java.util.Scanner;

public class Primzahlen {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new Primzahlen().run();
	}
	
	public void run()
	{
		Scanner sc = new Scanner(System.in);
		System.out.println("Geben Sie eine mögliche Primzahlen ein? ");
		int i = sc.nextInt();
		
		if(primzahlen(i))
		{
			System.out.println("Die Zahl: "+ i +" ist eine Primzahl");
		}
		else
			System.out.println("keine Primzahl");
		
		/* für die ersten 100 Zahlen
		int i = 1;
		while(i<=100)
		{
			if(primzahlen(i))
			{
				System.out.println(i);
			}
			i++;
		}
		*/
	}
	
	public boolean primzahlen(int number)
	{
		int i = 2;
		while(i <= number)
		{
			if(number % i == 0 && i < number)
			{
				return false;
			}
			else if (number % i == 0 && i == number)
			{
				return true;
			}
			i++;
		}
		return false;
	}
}
                

Lösung von: David Zeindler ()

prim = lambda x : True if x!=1 and len([i for i in range(x-1,1,-1) if x%i==0])==0  else False
                

Lösung von: rob ert (tub)

Number.prototype.isPrime = function() {
  let i = 2, num = this;
  if (num == 0 || num == 1) return false;
  if (num == 2) return true;
  while (i <= Math.ceil(Math.sqrt(num))) {
    if (num % i == 0) return false;
    i++;
  }
  return true;
}
                

Lösung von: Lisa Salander (Heidi-Klum-Gymnasium Bottrop)

// C++ 14 | VS-2022

#include <iostream>

static bool is_prime(int n) {
    if (n == 2) return true;
    if (n % 2 == 0 || n == 0 || n == 1) return false;
    for (auto i{ 2 }; i <= (int)ceil(sqrt(n)); i++)
        if (n % i == 0) return false;
    return true;
}

int main() {
    for (auto i{ 0 }; i < 1'000; i++)
        if (is_prime(i))
            std::cout << i << "\n";
}
                

Lösung von: Jens Kelm (@JKooP)

Verifikation/Checksumme:

1 -> false, 2 -> true, 3 -> true, 4 -> false, ...

Aktionen

Bewertung

Durchschnittliche Bewertung:

Eigene Bewertung:
Bitte zuerst anmelden

Meta

Zeit: 1
Schwierigkeit: k.A.
Webcode: 6yqz-4y5k
Autor: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)

Download PDF

Download ZIP

Zu Aufgabenblatt hinzufügen