24 Nisan 2013 Çarşamba

Delphi Programlama 2 Sınavı

Sınıf ortalama 27,55 olarak gerçekleşmiştir. Bu ortalama sizin Programlama ve yazılıma duyduğunuz ilgiyi göstermektedir. Sınıfta en yüksek not 100 olarak gerçekleşmiştir. En düşük not ise yine 5 olup 5 öğrenci aynı notu almıştır. Cevap anahtarı aşağıda verilmektedir. Eksiklerinizi giderip derse daha iyi hazırlanmanız dileğiyle.





 1-      Metin kutusundan girilen değerden başlayıp her saniye değeri bir azalarak 0’a giden kronometre programını aşağıda gösterildiği gibi oluşturunuz. (Süre bittiğinde ilgili label’ e süre bitti yazacak) (15 Puan)


int süre;
        private void button1_Click(object sender, EventArgs e)
        {
            süre = Convert.ToInt32(textBox1.Text);
            label2.Text = süre.ToString();
            timer1.Enabled = true;
            timer1.Interval = 1000;
            timer1.Start();
        }
 private void timer1_Tick(object sender, EventArgs e)
        {
            if (süre == 0)
            { label2.Text = "süre bitti";}
            else
            { süre--; label2.Text = süre.ToString();}}


2-       Hesapla butonuna basıldığında datetimepicker’ dan girilen tarihi şimdiki tarihle çıkarıp gün olarak label’ e yazdıran programı yazınız.(10 Puan).



TimeSpan tt = DateTime.Now - dateTimePicker1.Value;
label1.Text = tt.Days.ToString();



3-      Aşağıdaki şekilde görüldüğü gibi butona tıklandığında listbox1’ in elemanlarının 4’lü kombinasyonlarını listbox2’ ye atan programın kodlarını yazınız. (20 Puan)
for (int i = 0; i < listBox1.Items.Count; i++)
            for (int j = i + 1; j < listBox1.Items.Count; j++)
            for (int k = j + 1; k < listBox1.Items.Count; k++)
            for (int t = k + 1; t < listBox1.Items.Count; t++)
            listBox2.Items.Add(listBox1.Items[i].ToString() + listBox1.Items[j].ToString() + listBox1.Items[k].ToString() + listBox1.Items[t].ToString());










4-      Aşağıda gösterilen seçim programını adımlara uyarak kodlayınız
a)      + butonuna basıldığında metin kutusundaki elemanı liste kutusuna ekleyecek ve metin kutusu temizlenecek. (5 Puan)
b)      – butonuna basıldığında liste kutusundaki seçili eleman silinecek (5 Puan)
c)       Sıralı radyo butonu seçiliyken seç butonuna basıldığında liste kutusundaki elemanlar sırasıyla mesaj kutusunda görüntülenecek. (Örneğin butona 3. Kez basıldığında mesaj kutusu 3 yazdıracak 8 kez basıldığında 1 yazdıracak) (15 Puan)
d)      Rastgele radyo butonu seçiliyken seç butonuna basıldığında liste kutusundaki elemanlar rastgele mesaj kutusunda görüntülenecek. (10 Puan)
a)  listBox1.Items.Add(textBox1.Text);
            textBox1.Text = "";

b)   
listBox1.Items.Remove(listBox1.SelectedItem);

c)  int sayac = 0;
        private void button3_Click(object sender, EventArgs e)
        {
            if (radioButton1.Checked)
            {
                sayac = sayac % listBox1.Items.Count;
                MessageBox.Show(listBox1.Items[sayac].ToString());
sayac++;
 }

d)   
if (radioButton2.Checked)
            { Random rnd = new Random();
            int b = rnd.Next(0, listBox1.Items.Count);
            MessageBox.Show(listBox1.Items[b].ToString());
            }


5- Aşağıdaki program her bir yeteneğe 200 TL ekstra para vermektedir. Örneğin ham maaşı 1000 TL olan birinin 5 adet yeteneği varsa 1000 TL’de yeteneklerinden alacaktır ve toplam geliri 2000 TL olacaktır. Hesapla butonun altında gerçekleşen olayları yazınız. (Örnekte checkedListBox kullanılmıştır ama siz checkBox’ta kullanabilirsiniz) (20 Puan)
int maas = Convert.ToInt32(textBox1.Text);
            int ekstra = checkedListBox1.CheckedItems.Count * 200;
            textBox2.Text = ekstra.ToString();
            textBox3.Text = (maas + ekstra).ToString();

Veri Tabanı ve Yönetimi Dersi cevap Anahtarı

Sınıf ortalaması 22,86 olarak gerçekleşmiştir. Derste Notu 05 olan 16 öğrencimiz bulunmaktadır. En yüksek not 95'tir. Cevap anahtarı aşağıda verilmiştir. Hatalarınızı bulup derse çalışmanızı tavsiye ediyorum.

İyi Çalışmalar


1-      Yukarıdaki OKUL veri tabanının ER (varlık ilişki) diyagramını çiziniz. (25 Puan)
2-      SQL kodlarıyla OKUL veri tabanını oluşturunuz ve kullanınız (5 Puan)
Create database okul  -  use okul
3-      Yukarıdaki tabloları SQL kodlarıyla oluşturunuz. (15 Puan)
Create table ozluk(no int,ad varchar(30),soyad varchar(30),bol_id int)
Create table notlar(no int,vize int,mazeret int,final int,butunleme int,ders_id int)
Create table dersler(ders_id int,ders_ad varchar(30),teori int,pratik int,kredi int,bol_id int)
Create table bolum(bol_id int,bol_adi varchar(30))
4-      Sırasıyla her bir tablonun içerisine bir veri giriniz. (15 Puan)
İnsert into bolum values(1,’bilgisayar’)
İnsert into ozluk values(1,’türker’,’tuncer’,1)
İnsert into dersler values(1,’veri tabanı’,2,2,3,1)
İnsert into notlar(no,vize,final,ders_id) values(1,40,80,1)
 Sıralama bolum,ozluk,dersler ve notlar olacaktı rastgele yazanların puanları kırılmıştır.
5-      Veri tabanı dersini alan öğrencilerin adını ve soyadını listeleyecek SQL sorgusunu yazınız. (10 Puan)
SELECT ad,soyad
FROM ozluk,notlar,dersler
WHERE ozluk.no=notlar.no and notlar.ders_id=dersler.ders_id and ders_ad='veri tabanı'
6-      1 numaralı öğrencinin toplam kaç kredilik ders aldığını bulan SQL sorgusunu yazınız. (10 Puan)
SELECT Sum(kredi) AS toplam
FROM ozluk,notlar,dersler
WHERE ozluk.no=notlar.no and notlar.ders_id=dersler.ders_id and ozluk.no=1
7-      Bütünleme sınavından 50’ nin üstünde not alan öğrencinin hangi bölümde okuduğunu bulan SQL sorgusunu yazınız. (10 Puan)
SELECT bol_adi
FROM bolum,notlar,dersler
WHERE bolum.bol_id=dersler.bol_id and notlar.ders_id=dersler.ders_id and butunleme>50
8-      SELECT sum(bolum.bol_id) AS toplam  from bolum,ozluk,notlar where ozluk.no=notlar.no
Yukarıdaki sorgunun çıktısını alan adıyla birlikte aşağıdaki kutucuklara yazınız. (10 Puan)
toplam


30








22 Nisan 2013 Pazartesi

İnternet Programcılığı I sınavı Cevap anahtarı


SINIF ORTALAMASI 31,8 OLUP DERSLE İLGİLİ GEREKLİ ÇALIŞMALARIN YAPILMADIĞI GÖRÜLMÜŞTÜR. CEVAP ANAHTARINI İYİCE KONTROL EDİN VE FİNALE KADAR EKSİKLERİNİZİ GİDERMEYE GAYRET EDİN. 

1-
Yukarıdaki çıktıyı verecek Java Script kodunu aşağıdaki kutucuğa yazınız. (10 Puan)
var sehir;
sehir=prompt(“Yaşadığınız şehrin trafik kodunu giriniz”, “İstanbul için 34, Ankara için 6 gibi”);



2-  var a=5; var b=7; var c=14; var d=23; var e; e = (a + b < c) ? d : a+b ;
Yukarıdaki Java Script koduna göre e değerini aşağıdaki kutucuğa yazınız ? (5 Puan)
23

3- ASP ile ASP.NET arasındaki farklardan beş tanesini aşağıdaki tabloya yazınız . (15 Puan)
ASP
ASP.NET
Klasik ASP sunucusu .asp uzantılı dosyalarla ilgili taleplere cevap vermektedir.
ASP.NET sunucusu .asp, ascx ve .asmx uzantılarını kullandığı için tüm bu dosyaları aynı sunucu üzerinden çalıştırmamız mümkündür.
Az sayıda dil seçeneğinden birini kullanarak sunucu taraflı script yazılabilir ve çalışma anında yorumlanır.
Sunucu taraflı kodlar herhangi bir .NET dilinde yazılabilir. Bu diller yorumlanmaz derlenir.
Asp script’lerinin işlevselliği COM nesneleriyle genişletilebilir.
.NET System sınıflarından herhangi biri kullanılabilir,  mevcut COM nesneleri de çağrılabilir.
Kod ve HTML genellikle sayfa içinde yerel olarak karışmıştır.
ASP.NET sayfasında yerel kod da kullanılır fakat genelde code-behind sınıflarında HTML den ayrı yer alır.
Gönderilen HTML form alanlarını işler
Gönderilen form alanlarını geçerlilik denetimini yapar ve işler
Ayarlar, özel olaylarla ilgili kodu çalıştıran özel ASP dosyasında tutulur.
Ayarlar, XML formatındaki dosyalarda tutulur.







4-
Yukarıda formda satı ve sütun sayıları seçildikten sonra tablo oluştur butonuna tıklanınca istenile boyutta tablo oluşturan ASP.NET C# scripti aşağıdaki kutucuğa yazınız. (20 Puan)

protected void Page_Load(object sender, EventArgs e)
    {        //Satır ve Sütun Oluşumu
        int nrows = 3, ncells = 2, i, j;
        for (j = 0; j <= nrows - 1; j++)
        {  
          TableRow r;      r = new TableRow();
            for (i = 1; i <= ncells; i++)           {
                TableCell c;                c = new TableCell();
                c.Controls.Add(new LiteralControl ("Satır " + j.ToString() + ", hücre " + i.ToString()));
                r.Cells.Add(c);            }
            Table1.Rows.Add(r);          }



5- Aşağıda verilen validatorlerin görevlerini yanlarındaki kutucuklara yazınız. (20 Puan)
VALIDATOR
GÖREVİ
RequiredFieldValidator
Bir kontrol içerisine değer girilip girilmediğini kontrol eder. Veri girilmesi zorunlu alanlarda kullanılır.
CompareValidator 
Kontrol içerisine girilen değeri, sabit değerle veya başka bir kontrole girilen değerle karşılaştırır. 
RangeValidator 
Kontrol içerisine girilen değerin, İki sabit değer arasında olmasını sağlar.
RegularExpressionValidator 
Bir kontrol içerisine girilen değerin, istenilen formatta girilmesini sağlar.










6- Aşağıdaki boşluklara gelmesi gereken kontrolleri ilgili kutucuğa yazınız. (10 Puan)
ASPX kontrol 
Html Kontrol
<asp:Hyperlink>
<a href=”...”> </a>
<asp:image>
<img src=”..”>
<asp:image>
<input type=image>
<asp:Label>
<span> </span>
<asp:ListBox>
<select size=”5”> </select>
<asp:Panel>
<div> </div>
<asp:TextBox>
<input type=text>
<asp:RadioButton>
<input type=radiobutton>
<asp:DropDownList>
<select> </select>
<asp:Table>
<table> </table>

7-

Yukarıdaki formda butona basıldığında 2’ den metin kutusundaki değere kadar olan asal sayılar liste kutusuna eklenmektedir. Bu olayı gerçekleştirmek için butona yazılması gereken ASP.NET C# script kodunu yandaki kutucuğa yazınız.  (20 Puan)

int a = Convert.ToInt32(TextBox1.Text);
       
        for (int i = 2; i <= a; i++)
        {
            int sayac = 0;
            for (int j = 2; j < i; j++)
            {
                if (i % j == 0)
                    sayac++;
            }

            if (sayac == 0) ListBox1.Items.Add(i.ToString());
        }