21 Kasım 2017 Salı
Verilen bir dizinin sol ve sağ tarafının toplamı eşit olan indeksini bulma
Bir dizi tam sayı verilecektir. Göreviniz bu diziyi alıp N'nin solundaki tamsayıların toplamının N sağındaki tam sayıların toplamına eşit olduğu bir dizinin N indeksini bulmanızdır. Bunun gerçekleşmesini sağlayacak bir dizi verilmemişse fonksiyonumuz -1 dönecek.
Örneğin:
Diyelim ki {1,2,3,4,3,2,1} dizisi verildi:
Dizinin 3. konumunda indeksin sol tarafının toplamı ({1,2,3}) ve indeksin sağ tarafının toplamı ({3,2, 1}) ikisi de eşittir 6. Bu durumda fonksiyon dizinin indeksi olarak 3 döndürür.
Başka birine bakalım.
Size {1,100,50, -51,1,1} dizisi verildi:
Dizinin 1. konumunda, dizinin sol tarafının toplamı ({1}) ve dizinin sağ tarafının toplamı ({50, -51,1,1}) toplamı 1 dir. Her iki tarafın toplamı 1 dir. Bu durumda fonksiyon dizinin indeksi olarak 1 döndürür.
Örnek fonksiyon aşağıdaki gibidir:
public static int FindEvenIndex(int[] arr)
{
int left = 0,right = 0;
for (int i = 0; i < arr.Length; i++)
{
right = 0;
for (int j = i+1; j < arr.Length; j++)
{
right += arr[j];
}
if (left == right)
return i;
else left += arr[i];
}
return -1;
}
1 Kasım 2017 Çarşamba
C Sharp Uygulamalar Resmi Parçalara Bölme - Resmi Parçalara Bölme Programı
KONU : C Sharp Uygulamalar - C Sharp ( C# ) Form Uygulamalar bir resmi küçük parçalara bölme, bitmap grafik nesnesini daha küçük parçalara bölme, c sharp uygulamalar resmi parçalara bölme, c# uygulamalar resmi parçalara bölme, c sharp uygulamaları grafik nesnesini kullanarak resmi parçalara bölme, c sharp uygulamalar resmi parçalara ayırma örnekler.
UYGULAMAYI İNDİR
//parçaları ayırdığımız resimlerin her parçasını image olarak bir generic list içinde saklayalım
List< image > parcaResimler = new List< image >();
Bitmap resim;
Graphics gr = null;
Image alinanResim = Image.FromFile(@"C:\alinan.jpg");
// Bölmek istediğimiz resmi kaç sütuna ayıracağımızı girelim
int sutunSayisi = 2;
//Bölmek istediğimiz resmi kaç satıra ayırcağımızı girelim
int satirSayisi = 5;
int x = 0;
int y = 0;
// for döngüsünü kullanarak resmi parçalara ayırmaya başlayalım
for (int i = 0; i < satirSayisi; i++)
{
for (int k = 0; k < sutunSayisi; k++)
{
Rectangle seçili_alan = new Rectangle(x, y, alinanResim.Width / sutunSayisi, alinanResim.Height / satirSayisi);
//Seçili alan büyüklüğünde bir Bitmap oluştur
resim = new Bitmap(seçili_alan.Width, seçili_alan.Height);
//Bu Bitmap için grafik nesnesi oluştur
gr = Graphics.FromImage(resim);
//Picture Box içindeki resmi yeni resmin 0,0 noktasına çiz
gr.DrawImage(alinanResim, 0, 0, seçili_alan, GraphicsUnit.Pixel);
//Yeni resmi parcaResimler içine image olarak kaydet
parcaResimler.Add(resim);
x += alinanResim.Width / sutunSayisi;
}
y += alinanResim.Height / satirSayisi;
x = 0;
}
//grafik nesnesini sonlandır
gr.Dispose();
//parçaları ayırdığımız resimlerin her parçasını image olarak bir generic list içinde saklayalım
List< image > parcaResimler = new List< image >();
Bitmap resim;
Graphics gr = null;
Image alinanResim = Image.FromFile(@"C:\alinan.jpg");
// Bölmek istediğimiz resmi kaç sütuna ayıracağımızı girelim
int sutunSayisi = 2;
//Bölmek istediğimiz resmi kaç satıra ayırcağımızı girelim
int satirSayisi = 5;
int x = 0;
int y = 0;
// for döngüsünü kullanarak resmi parçalara ayırmaya başlayalım
for (int i = 0; i < satirSayisi; i++)
{
for (int k = 0; k < sutunSayisi; k++)
{
Rectangle seçili_alan = new Rectangle(x, y, alinanResim.Width / sutunSayisi, alinanResim.Height / satirSayisi);
//Seçili alan büyüklüğünde bir Bitmap oluştur
resim = new Bitmap(seçili_alan.Width, seçili_alan.Height);
//Bu Bitmap için grafik nesnesi oluştur
gr = Graphics.FromImage(resim);
//Picture Box içindeki resmi yeni resmin 0,0 noktasına çiz
gr.DrawImage(alinanResim, 0, 0, seçili_alan, GraphicsUnit.Pixel);
//Yeni resmi parcaResimler içine image olarak kaydet
parcaResimler.Add(resim);
x += alinanResim.Width / sutunSayisi;
}
y += alinanResim.Height / satirSayisi;
x = 0;
}
//grafik nesnesini sonlandır
gr.Dispose();
Kaydol:
Kayıtlar
(
Atom
)