Öncelikle XCode'u açıp yeni bir proje oluşturuyoruz.
Uygulamayı açtıktan sonra XCode'un görüntüsü aşağıdaki gibidir.
Sol kısımda gördünüz bölüm kodlama yapacağımız kısımlar.Bu uygulamada AppDelegate.h ve AppDelegate.m kısımlarında değişiklik yapmayacağız.
MainStoryboard.storyboard projenin görünümünü içerir.Görüntü kısmına sağ köşede gördüğünüz objeleri sürükleyip bırakarak kullanabilirsiniz.Biz bu uygulamada kullanmıcağız çünkü kod içerisinde UILabel oluşturacağız.
ViewController.h ve ViewController.m kısımlarında kodlama yapacağız.ViewController.h uygulamanın interface kısmıdır.Metodları,değişkenleri interface kısmında kodladıktan sonra ViewController.m'de bunları kullanabiliriz.
ViewController.m
//
// ViewController.m
// AsalSayı
//
// Created by mac on
7/16/13.
// Copyright (c) 2013
mac. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize sonuc;
- (void)viewDidLoad
{
[super viewDidLoad];
[self asalSayiBul:nil]; //asalsayiBul metodunu çağırdım.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any
resources that can be recreated.
}
-(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return
(interfaceOrientation!=UIInterfaceOrientationPortraitUpsideDown);
}
-(IBAction)asalSayiBul:(id)sender{
NSMutableArray *
hilalinArrayi = [[NSMutableArray alloc] init]; //array tanımlaması
int sinir = 1000;
int i;
for (i = 2; i <=
sinir; ++i) { //asal sayıları bulup arraye atıyoruz.
int j = 0;
for (j = 2; j
< i; ++j) {
if (i % j ==
0) {
break;
}
}
if (j == i) {
[hilalinArrayi addObject:[NSNumber numberWithInt:i ]];
}
}
NSLog(@"%@",hilalinArrayi); //Consola yazı yazmamızı sağlıyo.
for (int a = 0;
a<hilalinArrayi.count; a++) { //Döngü içerisine UILabel oluşturup asal sayıları tek tek ekrana basıyoruz.
int rowCount=15; //ekrandaki satır sayısı
float height=30; //yazının yüksekliği
float width=30; //yazının genişliği
float y=a%15*30; //formüller önemli
float
x=a/rowCount * width;//(rowCount);
NSNumber * sayi
= [hilalinArrayi objectAtIndex:a]; //Array içindeki asal sayıları alıyoruz.
CGRect frame = CGRectMake(x,
y, width, height); //framein hangi noktalarda olacağını ve boyutlarını belirliyoruz.
UILabel *
hilalinTexti = [[UILabel alloc] initWithFrame:frame]; //UILabel oluşturdum.
hilalinTexti.text=
[NSString stringWithFormat:@"%d",[sayi intValue] ]; //string formatına çevirme işlemi
hilalinTexti.textAlignment
= NSTextAlignmentCenter;
hilalinTexti.font
= [UIFont systemFontOfSize:10]; //textin büyüklüğünü belirliyoruz.
[self.view addSubview:hilalinTexti]; //ekrana basma işlemini yapıyoruz.
}
}
@end
ViewController.h
//
// ViewController.h
// AsalSayı
//
// Created by mac on
7/16/13.
// Copyright (c) 2013
mac. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController{
IBOutlet UITextField *sonuc;
}
@property (retain,nonatomic) UITextField *sonuc;
-(IBAction)asalSayiBul:(id)sender;
@end
Kodlar üzerinde yorum satırlarında işlevlerini açıklamaya çalıştım.Umarım faydalı olur.
Uygulamanın ekran görüntüsü aşağıdaki gibidir.
Hiç yorum yok:
Yorum Gönder