Xamarin - 로또 번호 생성기
2019. 4. 21. 14:44ㆍIT/C#
나의 Xamarin 첫 프로그램입니다.
저는 일주일에 한번씩 로또를 삽니다.
동행복권 사이트에서 랜덤 번호를 할 수 있는데 이때까지 한번도 맞은적이 없습니다.
그래서 내가 만든 어플로 번호를 픽하면 어떨까 생각해서 자마린도 배울겸 만들어 보았습니다.
1. MainPage.xaml
<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:로또생성기" x:Class="로또생성기.MainPage">
<StackLayout>
<!-- Place new controls here -->
<Label x:Name="title" Text="로또 번호 생성기" FontSize="Large" />
<Label x:Name="round1" Text="1회 :" />
<Label x:Name="round2" Text="2회 :" />
<Label x:Name="round3" Text="3회 :" />
<Label x:Name="round4" Text="4회 :" />
<Label x:Name="round5" Text="5회 :" />
<Button x:Name="buttonGenerator" Text="로또 번호 생성" Clicked="ButtonGenerator_Clicked" />
</StackLayout>
</ContentPage>
2. MainPage.xaml.cs
using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
using System.Threading;
namespace 로또생성기
{
// Learn more about making custom code visible in the Xamarin.Forms previewer
// by visiting https://aka.ms/xamarinforms-previewer
[DesignTimeVisible(true)]
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
title.Text = "로또 번호 생성기" + "(" + DateTime.Now.ToString("yyyy-MM-dd") + ")";
}
void ButtonGenerator_Clicked(object sender, System.EventArgs e)
{
round1.Text = "1회 :" + LottoNumberGenerator();
Thread.Sleep(100);
round2.Text = "2회 :" + LottoNumberGenerator();
Thread.Sleep(100);
round3.Text = "3회 :" + LottoNumberGenerator();
Thread.Sleep(100);
round4.Text = "4회 :" + LottoNumberGenerator();
Thread.Sleep(100);
round5.Text = "5회 :" + LottoNumberGenerator();
Thread.Sleep(100);
}
string LottoNumberGenerator()
{
string lottoNumber ="";
List<int> numbers = new List<int>();
Random number = new Random();
Boolean dup = false;
while(numbers.Count <= 5)
{
dup = false;
int random = number.Next(1, 45);
// 중복 검사
foreach (int i in numbers)
{
if (random == i)
{
dup = true;
}
}
if(dup == false)
{
numbers.Add(random);
}
}
numbers.Sort();
foreach(int temp in numbers)
{
lottoNumber = lottoNumber + " " + temp.ToString();
}
numbers.Clear();
return lottoNumber;
}
}
}
'IT > C#' 카테고리의 다른 글
[XAMARIN] App Life cycle과 환경 변수 (0) | 2019.05.25 |
---|---|
[XAMARIN] Button 이벤트 (0) | 2019.05.25 |
[XAMARIN] 가변길이 문자열 화면에 표현하기 (0) | 2019.05.23 |
[XAMARIN] 멀티뷰 - StatckLayout (0) | 2019.05.20 |
[XAMARIN] Label 사용방법 (0) | 2019.05.19 |
[XAMARIN] .net Standard에서 iOS, android, winPhone 구분하여 코딩하기 (0) | 2019.05.19 |
C# - Form Capture (0) | 2015.02.20 |
C# - SaveFileDialog 사용방법 (2) | 2015.02.20 |