10 Kasım 2021 Çarşamba

Python sıfırdan başlayarak

1. Aşağıda ne yapılmıştır? Ekran çıktısı ne olur?

a = 5

b = 8

c = a + b

print(c)

2. Yukarıdaki soruda a ve b değişkenlerinin türü nedir?

3. Aşağıdaki kod ne yapmaktadır?

a = int(input("Bir sayı giriniz:"))

4. Üçüncü sorudaki input() komutu ne iş yapmaktadır?

5. Üçüncü soruda neden int(input("...")) yapısını kullandık amacımız nedir? 

6. Aşağıdaki kod çalıştığında a değişkeninin türü ne olur?

a = input("Bir sayı giriniz:")

7. Aşağıda bulunan a ve b değişkenlerinin türü aynı mıdır?

a = 5

b = "5"

8. Dosya isimleri ve değişken isimlerinde Türkçe karakter kullanılabilir mi? Aşağıdaki degisken isimli verisinde neden Türkçe karakter var? Değişken ismi ile veri arasındaki bağıntıyı anlamaya çalışın.

degisken = "Ben string veriyim Türkçe karater içerebilirim ama değişken isimleri Türkçe karakter içeremez!"

9. Kullanıcıdan iki sayı alınız ve ekrana çarpımlarını yazdırınız?

10. Kullanıcıdan ismini alıp ekrana "Merhaba isim" yazdırınız?

11. Aşağıdaki kod ne yapmaktadır? Çıktı ne olur?

for i in range(10):

    print(i, ". adım")

12. Aşağıdaki kod ne yapmaktadır? döngü kaç kere çalışır?

for i in range(50,100,2):

    print( i )

13. Aşağıdaki kod ne yapmaktadır?

toplam = 0

for i in range(10):

    toplam += i

print(toplam)

14. Yukarıdaki soruda print(toplam) komutu döngü içinde midir? Döngü içinde olsaydı ekran çıktısı nasıl olurdu?

15. Onüçüncü saruda en başta neden toplam=0 değişkenini tanımladık?

16. Aşağıdaki mod alma işlemlerinin sonuçları ne olur?

3 % 2 = ?

4 % 5 = ?

0 % 2 = ?

25 % 3 = ?

17. Bir sayının tek mi? Çift mi olduğunu nasıl anlarız? Bir sayının 7'ye tam bölünüp bölünmediğini nasıl anlarız?

18. Kullanıcıdan 2 sayı alınız büyük olanı bulunuz? Eğer iki sayı eşitse ekrana eşittir yazınız?

19. Float türü nedir? Aşağıdaki a değişkenine Python derleyicisi hangi türü atar? Neden?

a = 0

b = 5

c = 2

a = b / c

20. Aşağıdaki program çalışır mı? Çalışırsa çıktı ne olur? Neden?

a = 5

b = "ali"

c = a + b

print(c)

21. While döngüsünün for döngüsünden farkı nedir? Hangi durumlarda tercih edilmelidir?

22. Aşağıdaki while döngüsü kaç adım çalışır?

sayac = 0

while sayac<20:

    sayac += 1

    print(sayac)

23. Yirmi ikinci soruda sayac += 5 yazsaydık kaç adım çalışırdı?

24. 0 dan 100'e kadar olan sayıların toplamını while döngüsü ile yapınız?

25. Aşağıdaki döngü kaç adım çalışır?

while True:

    print("Merhaba")

26. Aşağıdaki döngü kaç adım çalışır?

 while 1 < 2:

     print("Merhaba")

27. Aşağıdaki döngü kaç adım çalışır? Çalışır mı? Neden?

 while "ali" == "beril":

     print("Merhaba")
 
28. Bir önceki soruda while "ali" != "beril": yazılsa ne olur?
 
29. Kullanıcıdan 5'e tam bölünen bir sayı alıncaya kadar devam edecek sonsuz while döngüsü yazınız?
 
30. Sınıfımızda 40 öğrenci var hepsinin ismini ve aldığı notları tek tek turmak istesek? 80 tane değişken mi tanımlamalıyız? Kolay yolu nedir? Hangi yapıyı kullanıyorduk?
 
31. Kırk öğrencinin ismini ve notlarını tutacak olan dizileri tanımlayınız?
 
32. Aşağıdaki dizinin çıktıları ne olur?
a = [1, 3, 5, 8, 11, 0]
print(a[1]) 
print(a[0]) 
print(a[6])
print(a[5])
 
33. Aşağıdaki kodun ekran çıktısı ne olur?
b= ["ali", "ayşe", "ahmet", "mehmet", "betül"]
print(len(b))

34. Aşağıdaki kodun ekran çıktıları ne olur?
 
b= ["ali", "ayşe", "ahmet", "mehmet", "betül"]
print(b[len(b)]) 
print(b[len(b)-1])  
print(b[len(b)-2])  
print(b[len(b)-5]) 
print(b[len(b)-6])  
 
35. Her string bir karakter dizisidir. Aşağıdaki b değişkeni için çıktılar ne olur?
b = "Bugün hava çok güzel"
print(b[0])
print(b[1])
print(b[5])
print(b[12])
print(b[len(b)]
print(b[len(b)-1] 

36. Kullanıcıdan ismini alıp harf harf bir diziye aktarınız?
 
37. Aşağıdaki dizi için çıktılar ne olur?
a = ["hava", "bugün", "güzel", "çok"]
print(a[0])
print(a[3])
print(a[len(a)]
print(a[len(a)-1]
print(a[0][0])
print(a[1][3])
print(a[3][3]) 
print(a[len(a[3])])

38. Aşağıdaki dizi için çıktı ne olur?
z = ["çok", "algoritma", "seviyoruz", "dersini", "çalışıyoruz" , "yasin", "hocayı", "ve"]
print(z[-1])
print(len(z))
print(z[3])
print(z[1],z[3],z[0],z[2])
 
39. Kullanıcıdan bir string alınız ve tersten yazdırınız?  

40. Sıfır ile yüz arasında rastgele sayılardan oluşan 50 elemanlı bir dizi üretiniz? Dizi içinde 5'e tam bölünen sayıların toplamından, 7'ye tam bölünen sayıların toplamını çıkartınız?

41. Sıfır ile yüz arasında rastgele sayılardan oluşan 50 elemanlı bir dizi üretiniz? Dizi içinde 2'e tam bölünen sayıların ortalamasından, 3'ye tam bölünen sayıların ortalamasını çıkartınız?
 
42. Aşağıdaki kod ile ne yapılmıştır?
import random

a= random.randint(0,100)
print(a)

43. Yukarıdaki soruda a değişkenin maksimum ve minimum alabileceği değerler nelerdir?

44. Kırk ikinci soruda import random diyerek ne yapıyoruz?

45. Aşağıdaki kodlar ne yapmaktadır? Çıktılar ne olur?
import math

a = math.sqrt(81)
b = math.pow(3,2=
c = a -b ;

print(a)
print(b)
print(c)

46. Aşağıdaki değişkenlerin değeri ne olur?
import math 

a = math.pi
print(a)

b = math.floor(2.5)
print(b)

c = math.ceil(2.5)
print(c)

47. Kullanıcıdan satır ve sütun sayısını aldığınız bir matris oluşturup içerisini 0 ve 4 arasında rastgele sayılarla doldurunuz?

48. Dictionary veri yapısı nedir? Yılın 12 ayını tutan bir dictionary yazınız? Kullanıcı sayısal veri girdiğinde ilgili ayı yazan bir program yazınız? Örnek: kullanıcı 4 girdi ise "Nisan" yazacak.

49. Set veri yapısının özellikleri nelerdir? Eleman sayısı 10 olan sıfır yüz arasında rastgele sayılardan oluşan bir set oluşturunuz? (Setlerde aynı sayı olamaz dolayısı ile 10 farklı sayı oluşturunuz!)

50. İki sayıyı toplayım return eden bir fonksiyon yazınız?

51. Kullanıcının ismini alıp harflerinin ASCII karşılıklarını bir diziye aktran fonksiyon yazınız?

52. Kullanıcının ismini alıp harflerinin ASCII karşılıklarından tek olanları bir diziye, çift olanları bir diziye aktaran fonksiyon yazınız?

53. Kendisine gönderilen sayı asal ise True, değilse False gönderen fonksiyonu yazınız?

55. Kendisine gönderilen sayı Fibonacci ise True değilse False gönderen fonksiyonu yazınız?

56. Kendisine gönderilen string içinde sesli harf varsa True değilse False gönderen fonksiyonu yazınız?

57. Fonksiyonları neden kullanırız?

58. Local ve global değişkenler nedir?

59. Recursive fonksiyon nedir?

60. Kullanıcının istediği aralıkta rastgele bir sayı üretip return eden bir fonksiyon yazınız?


4 Nisan 2020 Cumartesi

Cannot open Eclipse Marketplace

This is most often caused by a problem with your internet connection. Please check your internet connection and retry. marketplace.eclipse.org
 First solution
  1. Go to-Window->Preferences->General->Network Connections
  2. Choose "Active Provider" To "Direct"
  3. then click "apply" and then "ok".
 Second solution
  1. Open command prompt (windows start button, type cmd in search)
  2. Click top left of command prompt, click properties, enable quick edit mode
  3. Copy: setx _JAVA_OPTIONS -Djava.net.preferIPv4Stack=true
  4. Right click on command prompt, should paste
  5. Hit enter. That easy!

Third solution


I tried all the suggestions but no success for Eclipse Mars, Neo and Oxygen At last it worked for Eclipse Oxygen when I added following line to eclipse.ini file
 
-Djava.net.preferIPv4Stack=true

7 Ocak 2020 Salı

RegEx for Python

import re

s = "Neden, Bay Anderson neden? Neden, neden, neden? Bunu neden yapıyorsun? Niye? Ayağa kalkmak niye? Kavga etmek niye? İnandığın şeyler için kavga ettiğini mi sanıyorsun? Sağ kalmadan öte bir şeyler için mi? Bana söyleyebilir misin, biliyor musun? Özgürlük mü? Gerçek mi? Belki de barış ya da sevgi olabilir mi? Yanılsamalar Bay Anderson, algılamada aldanmalar… Herhangi bir anlama ya da amacı olmayan bir varoluşu ümitsizce haklı göstermeye uğraşan zayıf insan zekasının ürettiği geçici kuruntular ve bunların hepsi de Matrix kadar yapay. Zaten, sevgi gibi zavallı bir kavramı insan zekası icat edebilirdi. Bunu görebilirsin Bay Anderson, artık bunu anlaman gerek! Kazanamazsın! Kavga etmen boşuna! Neden, Bay Anderson neden? Niye inat ediyorsun?"

Yukarıda tanımlı s stringi için çıktılar ne olur? Regex tanımlarını yazınız? Kodu yazıp çalıştırmadan yorumlamaya çalışınız?

-1-
a = re.findall("neden|Neden|niye|Niye",s);
print(len(a))

-2-
a = re.findall(".eden|.iye",s);
print(len(a))

-3-
a = re.split("\?|\!",s);
print(a)

-4-
Boşlukları saydırarak paragrafın kaç kelimeden oluştuğunu bulunuz? (Kelime sayısı = boşluk sayısı + 1)

-5-
Türkçe karakterlerin sayısını bulan regex ifadesini yazınız?

-6-
a = re.findall("[a-zA-Z]{4}[n]",s);
print(len(a))

-7-
Kaç kere "Bay Anderson" demiştir?

-8-
ı harflerini i harfleri ile değiştiriniz

-9-
e harfi ve a harfinin kullanım sayısının farkı kaçtır?

-10-
Kaç tane "." (nokta) karakteri kullanılmıitır? Noktaları, soru işaretlerini, ünlemleri vb. sayarak paragraf içindeki cümle sayısını buldurabilir miyiz? Eğer "..." veya diğer tekrar eden karakterler varsa cümle sayısını nasıl buldurabiliriz? Regex kodlarını yazmaya çalışınız?

RegEx for Java

String s = "Neden, Bay Anderson neden? Neden, neden, neden? Bunu neden yapıyorsun? Niye? Ayağa kalkmak niye? Kavga etmek niye? İnandığın şeyler için kavga ettiğini mi sanıyorsun? Sağ kalmadan öte bir şeyler için mi? Bana söyleyebilir misin, biliyor musun? Özgürlük mü? Gerçek mi? Belki de barış ya da sevgi olabilir mi? Yanılsamalar Bay Anderson, algılamada aldanmalar… Herhangi bir anlama ya da amacı olmayan bir varoluşu ümitsizce haklı göstermeye uğraşan zayıf insan zekasının ürettiği geçici kuruntular ve bunların hepsi de Matrix kadar yapay. Zaten, sevgi gibi zavallı bir kavramı insan zekası icat edebilirdi. Bunu görebilirsin Bay Anderson, artık bunu anlaman gerek! Kazanamazsın! Kavga etmen boşuna! Neden, Bay Anderson neden? Niye inat ediyorsun?"

Tanımlanan s stringi için aşağısadaki Regex sorularını cevaplayınız? Kodları yazmadan yorumlayarak çıktıları bulmaya çalışınız?

-1-
Pattern pattern = Pattern.compile(".eden");
Matcher matcher = pattern.matcher(s);
int count = 0;
while (matcher.find()) count++;
System.out.println(count);

-2-
Pattern pattern = Pattern.compile("[?!,.]");
Matcher matcher = pattern.matcher(s);
int count = 0;
while (matcher.find()) count++;
System.out.println(count);

-3-
Türkçe karakterlerin sayısını buldurunuz?

-4-
"e" ve "a" karakterlerinin farkı kaçtır? Hesaplattırınız?

-5-
Pattern pattern = Pattern.compile("[^a-zA-Z]");
Matcher matcher = pattern.matcher(s);
int count = 0;
while (matcher.find()) count++;
System.out.println(count);

-6-
sonu "n" ile biten 5 harfli kelime sayısını bulunuz?

-7-
Boşlukları saydırarak kelime sayısını bulunuz? (Kelime sayısı = Boşluk sayısı + 1)

-8-
System.out.println(Pattern.matches("[atM]{3}[ixr]{3}", s)

-9-
s stringi içerisinde zeka kelimesi var mı? RegEx ile nasıl kontrol ederiz?

-10-
Kaç tane "." (nokta) karakteri kullanılmıitır? Noktaları, soru işaretlerini, ünlemleri vb. sayarak paragraf içindeki cümle sayısını buldurabilir miyiz? Eğer "..." veya diğer tekrar eden karakterler varsa cümle sayısını nasıl buldurabiliriz? Regex kodlarını yazmaya çalışınız?

-11-
Kaç kere "Bay Anderson" demiştir?

10 Kasım 2019 Pazar

GitHUB 2019 en iyi 10 programlama dili

#10: Ruby

#9: C

#8: Shell

#7: TypeScript

#6: C++

#5: C#

#4: PHP

#3: Java

#2: Python

#1: JavaScript

 Kaynak : https://www.businessinsider.com/most-popular-programming-languages-github-2019-11#2-python-9

6 Haziran 2019 Perşembe

Google Stadia

Hiç bir donanıma ihtiyaç duymadan Google'ın güçlü serverları üzerinden oyun oynamanızı sağlayacak olan Stadia platformu Kasım 2019'da pilot ülkelerde hizmete başlıyor. Netflix benzeri bir üyelikle ve sadece internet bağlantısı ile istediğinizden platformdan istediğiniz oyunu kolaylıkla oynayacaksınız.

Teknoloji devi Google, Project Stream adıyla indirmeden oyun oynamayı sağlayan bir proje üzerinde çalışıyordu.2018'de tarayıcısı Chrome üzerinden Project Stream'i test etmeye başlayan şirket, nihayetinde Stadia'yı geliştirdi.


Google, Stadia hizmete girdiğinde platformda en az 30 oyun olacağını söylüyor.Oyun endüstrisinin en büyük yapımcı firmalarından Bethesda, EA, Rockstar Games, Sega, Square Enix, Warner Bros ve Ubisoft Google ile anlaşma sağlamış durumda ve oyunlarını Stadia'ya taşıyacaklar.Ancak Diablo, World of Warcraft, Overwatch gibi popüler oyunların yapımcısı Activision Blizzard ve Fortnite'ın yapımcısı Epic Games henüz Stadia ile anlaşma sağlamış değil. 

Yüksek performanslı oyun bilgisayarları ya da oyun konsolları gibi donanımlara para vermelerine de gerek kalmıyor. Çünkü oyunları çalıştıran aslında Google'ın yüksek performanslı sunucuları oluyor.Stadia'nın oyun kumandası ilk bakışta klasik bir konsol kumandasını andırsa da, bir tuşla oyunu YouTube video platformunda paylaşmayı sağlıyor.Kablosuz bağlantı ile çalışan kumanda, Google Asistan'a da erişim sağlıyor.Bir kullanıcı, YouTube'dan yayınını izlediği bir oyunun içinde kendisini bulabiliyor. Saniyeler içinde pasif bir izleyici olmaktan çıkıp, oyuna giriyor. Kumandanın bir tuşuyla da oyunu yayınlayabiliyor.Stadia, bulut (cloud) servis gücü ile, dev bir sunucu üzerinden çalışıyor.Yani bilgisayara oyun indirme ya da mağazaya gidip oyun satın almaya gerek kalmıyor.

14 Mayıs 2019 Salı

Vigenere Şifreleme metodu

Tüm alfabe yatay ve dikeyde hazırlanarak bir matris oluşturulur. Şifreleme metni ile şifrelenecek metin harf harf karşılaştırılır ve matristeki karşılığı yazılır.

Şifrelenecek metin: uçaklar
Rastgele metin: ali
Tablomuz:

X A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z
A A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z
B B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A
C C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B
Ç Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C
D D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç
E E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D
F F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E
G G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F
Ğ Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G
H H I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ
I I İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H
İ İ J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I
J J K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ
K K L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J
L L M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K
M M N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L
N N O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M
O O Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N
Ö Ö P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O
P P R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö
R R S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P
S S Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R
Ş Ş T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S
T T U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş
U U Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T
Ü Ü V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U
V V Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü
Y Y Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V
Z Z A B C Ç D E F G Ğ H I İ J K L M N O Ö P R S Ş T U Ü V Y

Şimdi şifrelenecek metnimizi ve anahtar kelimemizi karşılıklı dizelim (eğer anahtar kelimenin uzunluğu yetersiz kalırsa tekrarlayan şekilde yan yana dizebilirsiniz):
uçaklar
alialia

Artık her karşılıklı kelimeyi tabloda eşleştirerek ortaya çıkan şifreli metnimizi göze alalım:
u x a -> u
ç x l -> o
..
..
şeklinde devam edersek sonucumuz:
uoikzir
Gördüğünüz üzere elimizdeki bir tablo ve anahtar kelime ile şifrenin zorluğunu artırdık. Ve tabi yine bu metni çözmek için elimizde anahtar kelime ve tablo olmak zorundadır.

13 Mayıs 2019 Pazartesi

Kitap ödüllü algoritma yarışması

Biraz şifre çözmek isteyen sonra soruya ulaşıp algoritma yeteneğini geliştirmek isteyenler buyursun. Yarışma kuralları aşağıdaki gibidir; (ipucu: base64)

MS5TYWRlY2UgbmXDvCB5YnMgw7bEn3JlbmNpbGVyaSBrYXTEsWxhYmlsaXIuCjIuS29kbGFtYSBqYXZhLCBqYXZhc2NyaXB0LCBjIyBkaWxsZXJpIGlsZSB5YXDEsWxhYmlsaXIsIGtvZGxhciDDp2FsxLFudMSxIG9sbWFtYWzEsS4KMy5Qcm9ibGVtaSDDp8O2emVuIGtpxZ9pIGJpbGdpc2F5YXLEsSBpbGUgYmlybGlrdGUgNyBIYXppcmFuIDIwMTkgdGFyaWhpbmUga2FkYXIgYmFuYSB1bGHFn21hbMSxLgo0LsSwbGsgw6fDtnplbiAzIGtpxZ9peWUgYmlsZ2lzYXlhciBraXRhYsSxIGhlZGl5ZSBlZGlsZWNla3Rpcgo1LlByb2JsZW1pIMOnw7Z6bWVrIGnDp2luIGJpciBrYcOnIGHFn2FtYWRhbiBnZcOnbWVuaXogZ2VyZWtsaQo2LkHFn2HEn8SxZGFraSBsaW5rIHNpemkgYmlyIHJlc2ltZSBnw7ZuZGVyZWNlay4KaHR0cHM6Ly9wYnMudHdpbWcuY29tL21lZGlhL0Q2YzRiUDZYb0FBV0Nldy5qcGcg

25 Mart 2019 Pazartesi

2019 ilk çeyreğindeki popüler programlama dilleri sonuçları

The RedMonk analiz şirketinin 2019 ocak-mart dönemlerinde stackoverflow ve github üzerinden yaptığı araştırmaya göre sonuçlar;

Kaynak : Redmonk
1 JavaScript
2 Java
3 Python
4 PHP
5 C#
6 C++
7 CSS
8 Ruby
9 C
10 Objective-C
11 Swift
12 TypeScript
13 Scala
14 Shell
15 Go
15 R
17 PowerShell
18 Perl
19 Haskell
20 Kotlin

Haberin ingilizce orjinali için Redmonk