-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathC# 101 - HW12.cs
100 lines (88 loc) · 2.86 KB
/
C# 101 - HW12.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
using System;
namespace metotlar3
{
class Program
{
static void Main(string[] args)
{
//Rekürsif - Öz yinelemeli
//3^4=3*3*3*3
int sonuc=1;
for(int i=1;i<5;i++)
sonuc=sonuc*3;
Console.WriteLine(sonuc);
Islemler instance=new();
Console.WriteLine(instance.Expo(3,4));
//Extension Metotlar
string ifade="Kaan Şahin";
bool result=ifade.BoslukKontrol();
Console.WriteLine(result);
if(result)
Console.WriteLine(ifade.BoslukDegistir());
Console.WriteLine(ifade.BuyukHarf());
Console.WriteLine(ifade.KucukHarf());
int[] dizi={4, 5, 6, 7,0,3};
dizi.diziSirala();
dizi.EkranaYazdir();
int sayi=5;
Console.WriteLine(sayi.CiftSayi());
Console.WriteLine(ifade.GetFirstChar());
}
}
public class Islemler
{
//Rekürsif - Öz yinelemeli
public int Expo(int sayi, int üs)
{
if(üs<2)
return sayi;
return Expo(sayi,üs-1)*sayi;
//Expo(3,4)
//Expo(3,3)*3;
//Expo(3,2)*3*3;
//Expo(3,1)*3*3*3;
//3*3*3*3=3^4;
}
}
//Extension Metotlar
public static class Extension
{
public static bool BoslukKontrol(this string param) //this ifadesi olursa fonksiyon değil extension olur
{
return param.Contains(" "); //param.contains : sayar
}
public static string BoslukDegistir(this string param)
{
string[] dizi=param.Split(" ");//param.Split : birleştir
return string.Join("",dizi); //string.join : degistir
}
public static string BuyukHarf(this string param)
{
return param.ToUpper();//param.ToUpper büyük harfe dönüştürür
}
public static string KucukHarf(this string param)
{
return param.ToLower();//param.ToUpper büyük harfe dönüştürür
}
public static int[] diziSirala(this int[] param)
{
Array.Sort(param);
return param;
}
public static void EkranaYazdir(this int[] param)
{
foreach (int item in param)
{
Console.WriteLine(item);
}
}
public static bool CiftSayi(this int param)
{
return param%2==0;
}
public static string GetFirstChar(this string param)
{
return param.Substring(0,1); //0.indexten 1sonraki karaktere kadar getir
}
}
}