http://swish.swi-prolog.org/ sayfasında bulunan Online Prolog derleyicisi ile aşağıdaki programı çalıştırarak çeşitli denemeler yaptım. Kodlar: parent(pam, bob). parent(tom, bob). parent(tom, liz). parent(bob, ann). parent(bob, pat). parent(pat,jim). predecessor(X, Z):-parent(X, Z). predecessor(X, Z):-parent(X, Y),predecessor(Y, Z). Sorgu: predecessor(tom, pat). Sonuç: Doğru. Çalışmalar sırasında tuttuğum not:
Kategori Arşivleri: Programlama Dilleri
Programlama Dilleri
Prolog’ta önemli olan doğal hayattaki cümleleri Prolog programına anlatmaktır. Bizim konuştuğumuz kelimeleri, cümleleri Prolog direkt olarak anlayamaz. Bu cümleleri bizim Prolog’un anlayacağı dile çevirmemiz gerekmektedir. Aşağıdaki örneklere bakacak olursak bunu görebiliriz: Bütün çocuklar kısadır. kisa(X):-cocuk(X). Bütün erkek çocuklar arabaları sever. sever(X,araba):-erkek(X),cocuk(X). Bütün çocukların annesi vardır. var(X,anne):-cocuk(X). Sebzeyi hiçbir çocuk sevmez. sevmez(X,Y):-sebze(Y), cocuk(X). Çocuğunu döven öğretmeni>>>
Prolog mantıksal programlama dili olmasına rağmen prosedürel programlamaya da izin vermektedir. Prolog doğruluğu önceden belirlenmiş gerçeklerden oluşur. Kesin olan gerçekler programa tek tek girilir, bunların arasında ilişkiler belirlenir, sistemden output(çıktı) alınacağı zaman bu ilişkiler göz önünde bulundurularak çıktı alınır. Prolog aynı zamanda çözümün ne olacağını değil problemin ne olduğunu tanımlar. Prolog programlama dilinde; -Nesneler hakkındaki>>>
Android’te Navigation Drawer ile birlikte Fragment nasıl kullanılır? 1.Main Activity, DrawerLayout içerisinde olacak ve DrawerLayout’a ” android:id=”@+id/drawer_layout” ” şeklinde isim verilmiş olacak. 2.FragmentBir.java dosyası: package tr.com.ahmetcevahircinar.ilkokul.siniflar; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import tr.com.ahmetcevahircinar.ilkokul.R; public class FragmentBir extends Fragment { @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,>>>
Android’te geçiş reklamı(Interstitial Ads) nasıl eklenir? build.gradle(app)’ı açıp dependencies bölümünün en altına compile ‘com.google.android.gms:play-services-ads:9.4.0′ AndroidManifest.xml’i açıp: <uses-permission android:name=”android.permission.INTERNET” /> <uses-permission android:name=”android.permission.ACCESS_NETWORK_STATE”/> <meta-data android:name=”com.google.android.gms.version” android:value=”@integer/google_play_services_version” /> <activity android:name=”com.google.android.gms.ads.AdActivity” android:configChanges=”keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize” android:theme=”@android:style/Theme.Translucent” /> Activity içerisinde reklamı tanımlıyoruz: InterstitialAd InterstitialAds; onCreate metodunun içerisine: InterstitialAds = new InterstitialAd(this); InterstitialAds.setAdUnitId(“ca-app-pub-6594256584342903/6642404574”); reklamiYukle(); InterstitialAds.setAdListener(new AdListener() { @Override public void onAdClosed() { super.onAdClosed(); }>>>
Android’te Activity’den Fragment’e veri nasıl gönderilir? Bundle bundle = new Bundle(); bundle.putString(“anahtar”, “deger”); … Fragmentclass fragobj = new Fragmentclass(); fragobj.setArguments(bundle); Fragment’in onCreateView metoduna ise: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { String deger= getArguments().getString(“anahtar”); return inflater.inflate(R.layout.fragment, container, false); }
Android’te geri tuşuna basınca çıkmak isteyip istemediğini nasıl sorabiliriz? @Override public void onBackPressed() { AlertDialog.Builder alertdialog=new AlertDialog.Builder(this); alertdialog.setMessage(“Kapatmak istediğinizden emin misiniz?”); alertdialog.setCancelable(false).setPositiveButton(“Evet”, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { System.exit(0); } }).setNegativeButton(“Hayır”, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); AlertDialog alert=alertdialog.create(); alert.show(); }
C’de rekürsif olarak yazılmış ikili arama algoritmasının programı… #include<stdio.h> #include<stdlib.h> #define size 10 int ikiliarama(int[], int, int, int); int main() { int boyut, i, aranan, pozisyon; int ilk, son, list[size]; printf(“\nListe kac elemanli olacak: “); scanf(“%d”, &boyut); printf(“\nListenin elemanlarini giriniz :”); for (i = 0; i < boyut; i++) { scanf(“%d”, &list[i]); } ilk =>>>
C’de rastgele üretilen 50 sayıyı üreten, ekrana yazan, sıralayan, toplayan ve ortalamasını alan fonksiyonların olduğu program… #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <time.h> int sayilar[50]; void sayi_sirala(); bool sayi_uret(); void sayi_yazdir(int duzen); int toplam_bul(); float ortalama_bul(int toplam, int i); int main(void) { int i = 50; time_t t; srand((unsigned) time(&t)); if (sayi_uret()) { printf(“Sayilar>>>
C’de girilen kelimedeki sesli harf sayısını bulan program… #include <stdio.h> #include <conio.h> #include <string.h> int main(void) { char kelime[100]; int uzunluk = 0; int n = 0; int sayac = 0; char harf; printf(“\n Bir cumle giriniz (Turkce karakter kullanmayiniz):\n” ); gets(kelime); fflush(stdin); uzunluk = strlen(kelime); for( n= 0; n < uzunluk ; n++) {>>>

