email tisk

2008-01-25 14:07:16 | zobrazeno: 11007x
Program počítá největšího společného dělitele dvou zadaných čísel.

Algoritmus probíhá tak, že do řídící proměnné cyklu uloží menší ze dvou čísel a a b. V cyklu se testuje, je-li a,b dělitelné beze zbytku řídící proměnnou. Není-li dělitené, odečte se proměnná cyklu o jednu. Je-li dělitelné, pak se jedná o NSD.


import java.io.*;

public class NSD{
 public static void main(String[] args){
 	int a,b,i;
 	boolean delitelne;
 	long zacatek, konec;
 	
 	// Nacteni promennych a,b
 	System.out.println("\n\n\tZadej dve cisla");
 	System.out.print("\tZadej cislo a:   ");
 	a=VstupData.ctiInt();

 	System.out.print("\tZadej cislo b:   ");
 	b=VstupData.ctiInt();
 	
 	i=0;
 	if (a>b) i=b+1;
 	else i=a+1;
 	delitelne=true;
 	
 	// cyklus a vypocet NSD(a,b)
 	do{
    	    i=i-1;	
    	    if ( a%i==0 & b%i ==0 ) delitelne=false;
 	}while(delitelne & i>0);
 	
 	System.out.println("\n\n\tNejvetsi spolecny 
           delitel cisel: "+a+" a "+b+" je: "+i);
 }	

}