elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

Benzer belgeler
Görsel Programlama 1

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

C# Çalışma Örnekleri

D İ Z İ L E R A R R A Y S

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

HSancak Nesne Tabanlı Programlama I Ders Notları

BPR152-Algoritma ve Programlama II Uygulama -13

T.C. MARMARA ÜNİVERSİTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI PROGRAMLAMA DERSİ KAPSAMINDA YAPILAN

C# Örnek Uygulamalar I

Aynı tipten çok sayıda değişken topluluğudur. X Y Score1 Score2 (0) (1) (2)...

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

8- PROGRAM YAPISAL KOMUTLARI ve. M.ilkucar MAKU MYO 1

11- FONKSİYONLAR (FUNCTIONS)

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Diziler İndisli Değişkenler

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

BİL1001 Bilgisayar Bilimlerine Giriş 1

static void dizi_24() { Random rnd = new Random(); int [] tutulan=new int[10]; int dogru;

Programlama Dilleri 3

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

PDF. C# Console Örnekleri.

Programlama Dilleri 1. Ders 4: Diziler

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur

C# ÖRNEK UYGULAMALAR

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

BPR152-Algoritma ve Programlama II Uygulama -8

YZM 2105 Nesneye Yönelik Programlama

Diziler (Arrays) Çok Boyutlu Diziler

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Akış Konrol Mekanizmaları

Python Programlama Dili

PROGRAMLAMA DİLLERİ I

ALGORTMA ve PROGRAMLAMA - II (C# Sürümü) DERS NOTLARI

PROGRAMLAMA DİLLERİ I

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

BİLGİSAYAR PROGRAMLAMA DERSİ

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

BİLG Dr. Mustafa T. Babagil 1

NESNEYE YÖNELİK PROGRAMLAMA

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

NESNEYE YÖNELİK PROGRAMLAMA

BİLGİSAYAR PROGRAMLAMA DERSİ

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

M.ilkucar MAKU MYO 1

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI

Sınav Dağılım & IMKB Endeks

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Prof. Dr. Aybars UĞUR

Nesne Tabanlı Programlama

Uzaktan Eğitim Uygulama ve Araştırma Merkezi


Programlama Temelleri Örnek Sorular

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

1. Her marka için 3 aylık satış toplamı nedir? (Tablodaki satır toplamları)

Programlama Dilleri 3

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

Veri Yapıları Laboratuvarı

2. Dereceden Denklemin Köklerini Bulan Program

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

Nesne Tabanlı Programlama

VERİ TABANI ve YÖNETİMİ

C++ Dersi: Nesne Tabanlı Programlama

/*int sayi1, sayi2,toplam=0;

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Java da İşleçler, Ders #3 (4 Kasım 2009)

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Program Akış Kontrol Yapıları

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

Console.Write = Ekrana Yazıyı ve değişkenin değerini yazarak imleci satırın sonunda beklemesini sağlar.

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

Ders - 7 while döngüsü

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

ALGORİTMA VE PROGRAMLAMA I

YZM 2105 Nesneye Yönelik Programlama

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

ALGORİTMA VE PROGRAMLAMA II

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Program akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n

C#(Sharp) Programlama Dili

Transkript:

Ön bilgi: Dizi tanımlayabilmeli. foreach deyimi bilinmeli. Rastgele sayılar (Random) bilinmeli. 1. Aşağıda tamsayı tipinde iki boyutlu bir dizinin nasıl tanımlandığı, bir fonksiyona parametre olarak nasıl gönderildiği ve kullanıldığına dair bir örnek sunulmuştur. İnceleyiniz. soru_1(); static void soru_1() int[,] myarray = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ; // 1 2 3 4 // 5 6 7 8 // 9 10 11 12 PrintArrayItems(myArray); static void PrintArrayItems(int[,] arr) int row = arr.getlength(0); int column = arr.getlength(1); for (int i = 0; i < row; i++) for (int j = 0; j < column; j++) Console.WriteLine(i.ToString() + ":" + j.tostring() + " = " + arr[i, j].tostring()); 2. Aşağıda boolean tipinde bir dizinin tanımlanmasına ve foreach döngüsü ile dizinin tüm elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz. bool [] barray = new bool[10]; barray[0] = true; foreach (bool item in barray) Console.Write(item + " "); 3. Aşağıdaki 0 ile 10 aralığında 20 adet rastgele sayı üretimini sağlayan fonksiyonu inceleyiniz. static void RandomSayiUret()

Random rnd = new Random(); for (int i = 0; i < 20; i++) Console.Write(Convert.ToString(rnd.Next(10))+ " "); 4. (15 pt) Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu double tipindeki iki dizinin toplamını ekrana yazdıran program kodunu C# programlama dizi ile yazınız. Beklenen Fonksiyonlar: static double[,] DiziOku(int satir, int sutun) static void DiziTopla(double[,] dizi1, double[,] dizi2) 5. (15 pt) Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu double tipindeki iki dizinin çıkarma sonucunu ekrana yazdıran program kodunu C# programlama dizi ile yazınız. Beklenen Fonksiyonlar: static double[,] DiziOku(int satir, int sutun) static void DiziTopla(double[,] dizi1, double[,] dizi2) 6. (20 pt) Eleman sayısı klavyeden girilmek üzere, tek boyutlu boolean tipinde bir dizinin elemanlarını true false true false true şeklinde atayan program kodunu yazınız. 7. (50 pt) Eleman sayısı ve elemanları klavyeden girilmek üzere tek boyutlu integer tipindeki iki dizinin dot product ( ) sonucunu ekrana yazdıran program kodunu C# programlama dizi ile yazınız. Beklenen Fonksiyonlar: static double[] DiziOku(int boyut) static double DotProduct(double[] dizi1, double[] dizi2) A ve B, n elemanlı iki vektör olmak üzere n A B = A i B i = A 1 B 1 + A 2 B 2 + + A n B n i=1 Örnek: [13 5] [4 2 1] = 1.4 + 3. ( 2) + ( 5). ( 1) = 3

8. (30 pt) Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu double tipindeki bir dizinin elemanları toplamını bulan ve klavyeden girilen bir eşik değerden büyük ve küçük olan elemanlarını ayrı ayrı ekrana yazdıran programı C# programlama dili ile yazınız. 9. (40 pt) [-100, 100] aralığında kullanıcının istediği adette rastgele sayı üreten ve bu sayıların pozitif, negatif ve sıfır olanlarını ayrı ayrı üç dizide saklayıp bu dizilerin elamanlarını ekrana yazdıran programı C# programlama dili ile yazınız. 10. (30 pt) Kullanıcının seçimine göre double tipindeki Fahrenhayt değeri Santigrat Dereceye veya Santigrat Dereceyi Fahrenhayta dönüştüren program kodunu yazınız. Program sonucu hem double hem de integer olarak ekrana yazdırmalıdır. (FC: Fahrenhayt tan Santigrat a, CF: Santigrat tan Fahrenhayt a ve Q: Çıkış) Kullanıcıdan alınan girdi Q olana kadar program dönüşüm yapmaya devam etmelidir. ºF = ºC 1.8000 + 32.00 n 11. (15 pt) (i 2 i=0 + i!) şeklindeki bir işlem için hesapla isimli bir fonksiyon yazıp sonucu ekranda gösteren programı kodlayınız. Beklenen Fonksiyonlar : static int hesapla(int n) 12. (20 pt) Önceden tanımlı bir dizi içerisinde kullanıcı tarafından girilen bir sayının var olup olmadığını bulan programı yazınız. Program dizi ile bulunması istenen sayıyı bir metoda gönderip geriye sayının hangi pozisyonda bulunduğunu döndürmelidir. Beklenen Fonksyonlar: static int sayıbul(int[] dizi, int hedefsayi) 13. (30 pt) Ekrandan alınan sayının 1 ile 1000 arasında tam bölündüğü kaç tane sayı olduğunu metot üzerinden döndüren programı yazın. 14. (25 pt) Dizi elemanlarının ardışık olup olmadığını (10,9,8,7 ve 1,2,3,4 gibi) gösteren programı metod kullanarak yazınız. 15. toplama(add), çıkarma(sub), bölme(div) ve çarpma(mul) işlemlerini yapacak ve sonuçlarını belleğe kaydedecek basit bir hesap makinası tasarlanacaktır. Program ilk çalıştığında sonuçların kaydedileceği dizinin boyutunu alacaktır. Bundan sonra sırasıyla

işlem tipi, ilk parametre ve ikinci parametre girilecektir. İşlem tipine "exit" girilmediği sürece işlem tipinden itibaren olan döngü devam edecektir. Sonuçlar ilk başta boyutu verilen diziye kaydedilecektir. "exit" komutu geldikten sonra dizideki tüm sonuçlar ekrana altalta yazılacaktır. Her işlem tipinin ayrı ayrı fonksiyonlar şeklinde tanımlanması beklenmektedir. Girişler : dizi boyutu, işlem türü, ilk operand, ikinci operand İstenen Fonksiyonlar : addition, substraction, division, multiplication int size; int counter = 0; double[] results; size = Int32.Parse(Console.ReadLine()); results = new double[size]; while (true) String op = Console.ReadLine(); if (op == "exit") break; else if (op == "add") results[counter] = addition(double.parse(console.readline()), Double.Parse(Console.ReadLine())); else if (op == "sub") results[counter] = substraction(double.parse(console.readline()), Double.Parse(Console.ReadLine())); else if (op == "div") results[counter] = division(double.parse(console.readline()), Double.Parse(Console.ReadLine())); else if (op == "mul") results[counter] = multiplication(double.parse(console.readline()), Double.Parse(Console.ReadLine())); counter++; for (int k = 0; k < counter; k++) Console.WriteLine(results[k]); Console.ReadKey(); static double addition(double first_operant, double second_operant) return first_operant + second_operant; static double substraction(double first_operant, double second_operant) return first_operant - second_operant;

static double division(double first_operant, double second_operant) return first_operant / second_operant; static double multiplication(double first_operant, double second_operant) return first_operant * second_operant; 16. Program başlangıcında bugünün tarihini soracaktır. Gün ay yıl şeklinde sayısal giriler alındıktan sonra, 1 Ocak 1900 tarihinden itibaren bugüne kadar tüm günlerin uzun isimlerini (11 Aralık 2014) ilk index gün, ikinci index ay ve üçüncü index yıl olacak şekilde içinde saklayan 3 boyutlu string dizisini oluşturacaktır. Ardından gün, ayı ve yıl girilerek uzun isim sorgulanabilecektir. Bu sorgulama dizi üzerinden okuma şeklinde yapılacaktır. Belirtilen aralık dışında bir tarih girildiğinde bir hata mesajı gösterilecektir. String[,,] names; int current_day = Int32.Parse(Console.ReadLine()); int current_month = Int32.Parse(Console.ReadLine()); int current_year = Int32.Parse(Console.ReadLine()); names = new String[31, 12, current_year - 1990]; for (int k = 1; k < 32; k++) for (int l = 1; l < 13; l++) for (int m = 1990; m <= current_year; m++) names[k - 1, l - 1, m - 1990] = create_name(k, l, m); while (true) int requested_day = Int32.Parse(Console.ReadLine()); int requested_month = Int32.Parse(Console.ReadLine()); int requested_year = Int32.Parse(Console.ReadLine()); if (requested_year < 1990 requested_year > current_year (requested_year == current_year && requested_month > current_month) (requested_year == current_year && requested_month == current_month requested_day > current_day)) Console.WriteLine("Error!"); else Console.WriteLine(names[requested_day, requested_month, requested_year]); static String create_name(int day, int month, int year)

if (month == 1) return day.tostring() + " Ocak " + year.tostring(); if (month == 2) return day.tostring() + " Şubat " + year.tostring(); if (month == 3) return day.tostring() + " Mart " + year.tostring(); if (month == 4) return day.tostring() + " Nisan " + year.tostring(); if (month == 5) return day.tostring() + " Mayıs " + year.tostring(); if (month == 6) return day.tostring() + " Haziran " + year.tostring(); if (month == 7) return day.tostring() + " Temmuz " + year.tostring(); if (month == 8) return day.tostring() + " Ağustos " + year.tostring(); if (month == 9) return day.tostring() + " Eylül " + year.tostring(); if (month == 10) return day.tostring() + " Ekim " + year.tostring(); if (month == 11) return day.tostring() + " Kasım " + year.tostring(); if (month == 12) return day.tostring() + " Aralık " + year.tostring(); return ""; 17. Değerleri önceden belirlenmiş ya da kullanıcı tarafından girilen 10 elemanlı bir sayı dizisinin küçükten büyüğe doğru sıralayıp sıralı halini ekrana yazdıran programı kodlayınız. int[] dizi = 800, 11, 50, 771, 649, 770, 240, 9, 123, -3 ; int diziuzunluk = dizi.length; int temp = dizi[0]; for (int i = 0; i < diziuzunluk; i++) for (int j = i + 1; j < diziuzunluk; j++) if (dizi[i] > dizi[j]) temp = dizi[i]; dizi[i] = dizi[j]; dizi[j] = temp; for (int i = 0; i < dizi.length; i++) Console.Write(dizi[i] + " ");

18. Ekrandan alınan cümleyi şifreleyerek tekrar ekrana yazdıran metodu kodlayınız. Şifreleme işleminde cümle tersten yazdırılacak ve sesli harflerin yerine tek sayılar yerleştirilecektir. string cumle; Console.Write("Cümleyi Giriniz : "); cumle = Console.ReadLine(); sifrele(cumle); Console.WriteLine("Girilen Cümele : 0", cumle); static void sifrele(string dizi) char harf; Console.Write("Şifreli Hali : "); for (int i = dizi.length - 1; i >= 0; i--) harf = dizi[i]; if (harf == 'a') harf = '1'; if (harf == 'e') harf = '3'; if (harf == 'ı' harf == 'i') harf = '5'; if (harf == 'o' harf == 'ö') harf = '7'; if (harf == 'u' harf == 'ü') harf = '9'; Console.Write("0", harf);