Vytvoríme si nový projek WPF application.
Vytvorí sa nám "MainWindow" (okno aplikácie)
-v okne aplikácie si vytvoríme 2 x textBox
1. bude mať názov textBox1 - ten bude slúžiť na zadávanie čísla
2. bude mať názov textBox2 - ten bude slúžiť na výsledok či je číslo prvočíslo alebo nie
-dalej v okne aplikácie vytvoríme tlačítko (Button) s názvom Button1 v ktorom zmeníme zobrazovaný text z "Button" na "Je prvocislo?"
Dvojklikom na novovytvorené tlačítko Button1 nás editor prenesie do samotnej programovej časti našej aplikácie a zároveň vytvorí metódu button1_click().
Do metódy button1_click zapíšeme nasledujúci kód:
int cislo = 0; //deklarujeme si novu premennu string vysledok; //deklarujeme si novu textovu premennu cislo = System.Int32.Parse(textBox1.Text);//do premennej cislo sa ulozi cislo ktore zadal uzivatel do textBox1 vysledok = metodaPrvocislo(cislo); //do premmenej vysledok ulozim vystup z metody metodaPrvocislo textBox2.Text = vysledok.ToString(); //zapisem vysledok do texBox2
Ďalej vytvoríme metódu metodaPrvocislo ktorá bude vyzerať nasledovne:
private string metodaPrvocislo (int cislo)//Vstup do metody bude typu int, vystup metody bude string
{ //zistenie ci ide o prvocislo
int pomocneCislo; //deklarujeme si novu premennu
if (cislo <= 1) return "Nie"; //vsetky cisla mensie ako 2 sa nepovazuju za prvocisla
if (cislo == 2) return "Ano"; //2 je prvocislo
if (cislo % 2 == 0) return "Nie"; //kazde parne cislo okrem 2 nieje prvocislo
for (pomocneCislo = 3; pomocneCislo < cislo/2; pomocneCislo = pomocneCislo+2)
{
if (cislo % pomocneCislo == 0) return "Nie";
}
//aplikacia postupne vydeli vlozene cislo kazdym neparnym cislo pocnuc 3-kou,
//az pokial nenajde cislo po deleni ktorym vznikne zvysok 0.
//Ak nenajde ziadne taketo cislo, tak je vlozene cislo prvocislo
return "Ano";
}
Do aplikácie tiež môžeme pridať tlačítko na vypnutie aplikácie.
Celý kód našej aplikácie by mohol vyzerať takto:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
textBox1.Text = "Vstup"; //pri spusteni programu ulozi do texBox1 text
textBox2.Text = "Vystup"; //pri spusteni programu ulozi do texBox2 text
}
private void button2_Click(object sender, RoutedEventArgs e)
{
this.Close(); //vypnutie aplikacie
}
private void button1_Click(object sender, RoutedEventArgs e) //tuto metodu aktivuje stlačenie tlacitka Button1
{
int cislo = 0; //deklarujeme si novu premennu
string vysledok; //deklarujeme si novu textovu premennu
cislo = System.Int32.Parse(textBox1.Text);
//do premennej cislo sa ulozi cislo ktore zadal uzivatel do textBox1
vysledok = metodaPrvocislo(cislo);
//do premmenej vysledok ulozim vystup z metody metodaPrvocislo
textBox2.Text = vysledok.ToString(); //zapisem vysledok do texBox2
}
private string metodaPrvocislo (int cislo) //Vstup do metody bude typu int, vystup metody bude string
{ //zistenie ci ide o prvocislo
int pomocneCislo; //deklarujeme si novu premennu
if (cislo <= 1) return "Nie"; //vsetky cisla mensie ako 2 sa nepovazuju za prvocisla
if (cislo == 2) return "Ano"; //2 je prvocislo
if (cislo % 2 == 0) return "Nie"; //kazde parne cislo okrem 2 nieje prvocislo
for (pomocneCislo = 3; pomocneCislo < cislo/2; pomocneCislo = pomocneCislo+2)
{
if (cislo % pomocneCislo == 0) return "Nie";
}
//aplikacia postupne vydeli vlozene cislo kazdym neparnym cislo pocnuc 3-kou,
//az pokial nenajde cislo po deleni ktorym vznikne zvysok 0.
//Ak nenajde ziadne taketo cislo, tak je vlozene cislo prvocislo
return "Ano";
}
}
}







