Gıda – Web – Teknoloji != Hasanibrahim

ANSI C

Telefon Rehberi v.3

by on Tem.19, 2010, under ANSI C, Bilgisayar(Teknik), Çalışamlarım, Ödevler

//      Tel Rehberi v.1..c
//      
//      Copyright 2010 Hasan İbrahim Kozan <hasanibrahim@Hasanibrahim>
//      
//      This program is free software; you can redistribute it and/or modify
//      it under the terms of the GNU General Public License as published by
//      the Free Software Foundation; either version 2 of the License, or
//      (at your option) any later version.
//      
//      This program is distributed in the hope that it will be useful,
//      but WITHOUT ANY WARRANTY; without even the implied warranty of
//      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//      GNU General Public License for more details.
//      
//      You should have received a copy of the GNU General Public License
//      along with this program; if not, write to the Free Software
//      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
//      MA 02110-1301, USA.
 
 
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
 
void ekle (void) 
 
	{ //add function
 
     baslangic:
 
     printf("Lutfen gorunen bilgileri yazarak enter e basiniz\n");    // fill the informations and press enter
 
     char adi[20]={0};
 
     printf("Adiniz:"); // name
 
     scanf("%s",adi);
 
     char soyadi[20]={0};
 
     printf("\nSoyAdiniz:"); //surname
 
     scanf("%s",soyadi);
 
     char Telefonu[20]={0};
 
     printf("\nTelefon:"); //phne
 
     scanf("%s",Telefonu);
 
     char Diger[20]={0};
 
     printf("\nDiger Bilgiler:");//other
 
     scanf("%s",Diger);
 
     printf ("Girilen Bilgiler Asagidaki gibidir\n"); // your informations are below
 
     printf("Adiniz: %s \nSoyadiniz: %s \nTelefonunuz: %s \n Diger: %s \n", adi, soyadi, Telefonu, Diger); //informations
 
     printf("\n onayliyormusunuz 1. Evet 2. Hayir\n"); // agree ? 1 for yes 2 for no
 
     int onay=0; //
 
     scanf("%d", &onay); 
 
     if (onay==2) goto baslangic; else {
 
     FILE *veritabani;
 
     veritabani = fopen( "veritabanidosyasi.txt", "a" );
 
     if((veritabani = fopen("veritabanidosyasi.txt","a"))== NULL) printf("Error 31: Dosya acma/okuma yazma hatasi\n cikmak icin 3 e basin, yeniden denemek icin 1 e \n");
 
     printf("Ekleniyor....\n");
 
     fprintf (veritabani, "%s\t %s\t %s\t %s \n", adi, soyadi, Telefonu, Diger);
 
     printf("Ekleme Basarili.\n");
 
     fclose(veritabani);   
 
     printf("... Dosya kapandi.. \n");
 
     }
 
}
 
void listele () 
 
{
 
   char birkelime[100];
 
   char *c;
 
   FILE *veritabani;
 
   veritabani = fopen("veritabanidosyasi.txt","r");
 
   do {
 
     c = fgets(birkelime,100,veritabani); 
 
     if (c != NULL)
 
        printf("%s",birkelime);    
 
   } while (c != NULL);
 
   fclose(veritabani);
 
}
 
void arama()
 
{
 
char adi[20]={0}; char soyadi[20]={0}; char Telefonu[20]={0}; char Diger[20]={0}; char ara[20]={0};
 
int say=0;
 
FILE *veritabani;
 
veritabani=fopen("veritabanidosyasi.txt","r");
 
printf ("Aranacak arguman=");
 
scanf ("%s",ara);
 
while (fscanf(veritabani,"%s\t %s\t %s\t %s", adi, soyadi, Telefonu, Diger)!= EOF)
 
{
 
if (strcmp (ara,adi) == 0 || strcmp (ara,soyadi) == 0 || strcmp (ara,Telefonu) == 0 || strcmp (ara,Diger) == 0 )
 
{
 
say++;
 
if (say>0)
 
printf ("%s\t %s\t %s\t %s\n ", adi, soyadi, Telefonu, Diger);
 
} 
 
}
 
if (say==0)
 
{
 
printf ("Kayit bulunamadi\n");
 
}
 
fclose(veritabani);
 
}
 
int main (int argc, char *argv[])
 
{
 
  int secim;
 
  while (1) {
 
    printf ("1- Ekleme\n"
 
            "2- Listeleme\n"
 
            "3- Arama\n"
 
            "4- Cikis\n\n");
 
    printf ("Seciminizi giriniz: ");
 
    scanf ("%d", &secim); 
    if (isdigit(secim))
 
    {
 
    if (secim == 1) { 
 
      ekle();
 
    } else if (secim == 2) {
 
      listele();
 
    } else if (secim == 3) {
 
      arama();
 
    }
 
      else if (secim == 4) {
 
      break;
    } 
 
}
 
      else { printf("Lutfen 1-4 arasi sayi giriniz\n"); 
 
    }
 
 
 
  }
 
  return 0;
 
}
Leave a Comment more...

C Programlama Dili ile Gelişmiş GUİ siz Telefon Rehberi (Arama fonksiyonlu) ve yakında düzeltme fonksiyonlu :)

by on Tem.16, 2010, under ANSI C, Bilgisayar(Teknik), Çalışamlarım, Ödevler

#include <stdio.h>
 
#include <stdlib.h>
 
void ekle (void) { //add function
 
     baslangic:
 
     printf("Lutfen gorunen bilgileri yazarak enter e basiniz\n");    // fill the informations and press enter
 
     char adi[20]={0};
 
     printf("Adiniz:"); // name
 
     scanf("%s",adi);
 
     char soyadi[20]={0};
 
     printf("\nSoyAdiniz:"); //surname
 
     scanf("%s",soyadi);
 
     char Telefonu[20]={0};
 
     printf("\nTelefon:"); //phne
 
     scanf("%s",Telefonu);
 
     char Diger[20]={0};
 
     printf("\nDiger Bilgiler:");//other
 
     scanf("%s",Diger);
 
     printf ("Girilen Bilgiler Asagidaki gibidir\n"); // your informations are below
 
     printf("Adiniz: %s \nSoyadiniz: %s \nTelefonunuz: %s \n Diger: %s \n", adi, soyadi, Telefonu, Diger); //informations
 
     printf("\n onayliyormusunuz 1. Evet 2. Hayir\n"); // agree ? 1 for yes 2 for no
 
     int onay=0; //
 
     scanf("%d", &onay); 
 
     if (onay==2) goto baslangic; else {
 
     FILE *veritabani;
 
     veritabani = fopen( "veritabanidosyasi.txt", "a" );
 
     if((veritabani = fopen("veritabanidosyasi.txt","a"))== NULL) printf("Error 31: Dosya acma/okuma yazma hatasi\n cikmak icin 3 e basin, yeniden denemek icin 1 e \n");
 
     printf("Ekleniyor....\n");
 
     fprintf (veritabani, "%s\t %s\t %s\t %s \n", adi, soyadi, Telefonu, Diger);
 
     printf("Ekleme Basarili.\n");
 
     fclose(veritabani);   
 
     printf("... Dosya kapandi.. \n");
 
     }
 
}
 
void listele () 
 
{
 
   char birkelime[100];
 
   char *c;
 
   FILE *veritabani;
 
   veritabani = fopen("veritabanidosyasi.txt","r");
 
   do {
 
     c = fgets(birkelime,100,veritabani); 
 
     if (c != NULL)
 
        printf("%s",birkelime);    
 
   } while (c != NULL);
 
   fclose(veritabani);
 
}
 
void arama()
 
{
 
char adi[20]={0}; char soyadi[20]={0}; char Telefonu[20]={0}; char Diger[20]={0}; char ara[20]={0};
 
int say=0;
 
FILE *veritabani;
 
veritabani=fopen("veritabanidosyasi.txt","r");
 
printf ("Aranacak arguman=");
 
scanf ("%s",ara);
 
while (fscanf(veritabani,"%s\t %s\t %s\t %s", adi, soyadi, Telefonu, Diger)!= EOF)
 
{
 
if (ara==adi || ara == soyadi || ara == Telefonu || ara == Diger )
 
{
 
say++;
 
if (say>0)
 
printf ("%s\t %s\t %s\t %s\n ", adi, soyadi, Telefonu, Diger);
 
} 
 
}
 
if (say==0)
 
{
 
printf ("Kayit bulunamadi\n");
 
}
 
fclose(veritabani);
 
}
 
int main (int argc, char *argv[])
 
{
 
  int secim;
 
  while (1) {
 
    printf ("1- Ekleme\n"
 
            "2- Listeleme\n"
 
            "3- Arama\n"
 
            "4- Cikis\n\n");
 
    printf ("Seciminizi giriniz: ");
 
    scanf ("%d", &secim);
 
    if (secim == 1) {
 
      ekle();
 
    } else if (secim == 2) {
 
      listele();
 
    } else if (secim == 3) {
 
      arama();
 
    }
 
      else if (secim == 4) {
 
      break;
 
    }
 
  }
 
  return 0;
 
}
3 Comments :, , , , , more...

C Programlama Dili ile telefon rehberi hazırlama listeleme, ekleme, bulma

by on Tem.16, 2010, under ANSI C, Bilgisayar(Teknik), Çalışamlarım, Ödevler

Programı uzun uzadıya anlatmaktansa ornek screenshot daha kolay olur diye dusundum.

Lutfen dikkatli inceleyiniz, sorunuz varsa sorunuz :)

Ekran Görüntüsü

#include 
 
#include 
 
void cik () { exit(1); };
 
void listele () 
 
{
 
   char birkelime[100];
 
   char *c;
 
   FILE *veritabani;
 
   veritabani = fopen("ibrahimkozan_db.txt","r");
 
   do {
 
     c = fgets(birkelime,100,veritabani); 
 
     if (c != NULL)
 
        printf("%s",birkelime);    
 
   } while (c != NULL);
 
   fclose(veritabani);
 
}
 
int main(int argc, char *argv[])
 
{
 
    baslangic:
 
printf("Lutfen gorunen basit bilgileri yazarak enter e basiniz\n");    
 
char adi[20]={0};
 
printf("Adiniz:");
 
scanf("%s",adi);
 
char soyadi[20]={0};
 
printf("\nSoyAdiniz:");
 
scanf("%s",soyadi);
 
char Telefonu[20]={0};
 
printf("\nTelefon:");
 
scanf("%s",Telefonu);
 
char Diger[20]={0};
 
printf("\nDiger Bilgiler:");
 
scanf("%s",Diger);
 
printf ("Girilen Bilgiler Asagidaki gibidir\n");
 
printf("Adiniz: %s -girdi-sonu \nSoyadiniz: %s girdi-sonu \nTelefonunuz: %s girdi-sonu\n Diger: %s girdi-sonu\n", adi, soyadi, Telefonu, Diger);
 
FILE *veritabani;
 
veritabani = fopen( "ibrahimkozan_db.txt", "a" );
 
if((veritabani = fopen("ibrahimkozan_db.txt","a"))== NULL) printf("Error 31: Dosya acma/okuma yazma hatasi\n cikmak icin 3 e basin, yeniden denemek icin 1 e \n");
 
int onay;
 
printf("\nonayliyormusunuz 1. Evet 2. Hayir");
 
scanf("%d", &amp;onay);
 
if (onay == 2) goto baslangic;
 
else {
 
;printf("Ekleniyor....\n");
 
fprintf (veritabani, "%s\t %s\t %s\t %s \n", adi, soyadi, Telefonu, Diger);
 
printf("Ekleme Basarili.\n");
 
fclose(veritabani);   
 
printf("... Dosya kapandi.. \n");
 
printf("Listeyi Gormek icin 1 e, Yeni Kayit Ekleme icin 2 ye , Cikmak icin 3 e basiniz\n");
 
int secenek;
 
scanf("%d", &amp;secenek);
 
if (secenek == 1) listele();
 
if (secenek == 2) goto baslangic;
 
if (secenek == 3) cik();
 
}
 
  return 0;
 
}
Leave a Comment more...

C Programlama Dili ile 10 luk Tabandan İstenilen Tabana Geçme

by on Tem.15, 2010, under ANSI C, Bilgisayar(Teknik), Çalışamlarım, Ödevler

#include <stdio.h>
 
#include <stdlib.h>
 
 
 
 
 
int main (void)
 
{
 
  int ilk,sayi,sayi2,taban,taban2, kalan, bolum,sayac=0,c;
 
  printf("Lutfen  sayi giriniz\n");
 
  scanf("%d", &sayi);
 
  printf("Lutfen  taban giriniz\n");
 
  scanf("%d", &taban);
 
  sayi2=sayi;taban2=taban; ilk=sayi;
 
  for (c=0;c<sayi;c++)  
 
  {
 
	  if (sayi2/taban2 > taban2) {sayi2/=taban2; sayac++;}
 
	  else break;
 
  }
 
  sayac+=1;
 
int dizi,i[sayac];
 
  dizi=sayac-1;//cunku sayac 1 den basladi, dizi 0 dan
 
  do {
 
	  bolum=sayi/taban;
 
	  kalan=sayi-taban*bolum;
 
	  i[dizi]=kalan;
 
	  sayi=bolum;
 
	  dizi--;
 
	  } while (sayi>taban);
 
printf("%d(10) = %d",ilk, sayi);//bunun burda ne isi var?el-cevap: bolmenin en sonundaki bolum, ilk basamk olacak :)
 
for (dizi=0; dizi<sayac; dizi++) printf("%d", i[dizi]);
 
printf("(%d)",taban);  
 
 
 
  return 0;
 
}
Leave a Comment more...

C programlama dili ile dikdortgen yapma/çizme

by on Kas.14, 2009, under ANSI C

/*
 
* Dikdortgen.c
 
* * Copyright 2009 Hasanibrahim hasan@ibrahimkozan.com
 
* * This program is free software; you can redistribute it and/or modify
 
* it under the terms of the GNU General Public License as published by
 
* the Free Software Foundation; either version 2 of the License, or
 
* (at your option) any later version.
 
* * This program is distributed in the hope that it will be useful,
 
* but WITHOUT ANY WARRANTY; without even the implied warranty of
 
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 
 * GNU General Public License for more details.
 
 * * You should have received a copy of the GNU General Public License
 
* along with this program
 
*/
 
#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char *argv[])
{
    int kisakenar,uzunkenar, bosluk , i,j,k;
    printf ("kisa kenar =");
    scanf("%d",&kisakenar);
    printf("\n");
    printf("uzun kenar =");
    scanf("%d", &uzunkenar);
    printf("\n");
    bosluk=(uzunkenar-2)*2+1;
    kisakenar=kisakenar-2;
 
 
    for (i=0;i<uzunkenar;i++)//Bu ust kenar
    {
        printf("* ");
    }
 
    printf("\n");
 
    for(j=0;j<kisakenar;j++)//Burası da orta icin
    {
    printf ("*");
    for(k=0;k<bosluk;k++)
    {
                         printf(" ");
    }
    printf("*\n");
    }
 
    for (i=0;i<uzunkenar;i++)//Bu alt kenar
    {printf("* ");}printf("\n");
 
 
 
  system("PAUSE");	
  return 0;
}

Hemen Açıklamaya Geçelim.
Uzun kenar ve kısa kenar kontrolü için ;

 while (shortedge<longadge)

deyimini kullanabilirsiniz.

Karakterler arasına bir boşluk koydum, bunu kaldırmak için
bir kaç ufak düzenleme yapmaniz gerekir.
İlk olarak

 {printf("* ");}printf("\n");

bu deyimi

 {printf("*");}printf("\n");

buna
İkinci olarak

 space=(longedge-2)*2+1;

bu deyimi

 space=(longedge-2);

buna çevirmeniz gerekir.
Hepsi bu kadar
Umarım yararlı olur, Hasan İbrahim

2 Comments more...

C Programlama dili ile Bileske ( Bilesik ) Faiz Hesaplaması

by on Mar.10, 2009, under Ödevler

#include stdio.h
#include stdlib.h
 
    main() {
int yil=0;
float senin_paran;
printf("parani gir man ORN: 1000 TL \n");
scanf ("%f", &senin_paran);
float yillik_faiz;
printf ("Yillik faizi gir man ORN: 0.75 \n");
scanf ("%f", &yillik_faiz);
int kac_yil;
printf("Kac yil yatircan  ? ORN: 5 \n");
scanf("%d", &kac_yil);
while (yil<kac_yil)
{
senin_paran+=senin_paran*yillik_faiz;
yil++;
}
printf("paran %d yil sonra %f TL olur \n", kac_yil, senin_paran);
 
printf("Fakat o para sana yaramaz demedi deme :) ");
 
  system("PAUSE"); 
  return 0;
}
3 Comments :, more...

C Programlama dili ile sayı farkı

by on Mar.06, 2009, under ANSI C, Ödevler

Kullanıcı tarafından atanan iki gerçel sayının tam kısmını sunar.

#include stdio.h
#include stdlib.h
 
cikar ( float x, float y )
{
      float z;
      z=x-y;
      return z;
}
 
int main()
{
  float a,b,c; 
  int d;
  printf("bosluk birakarak iki gercel sayi giriniz. Orn: 12.322 16.2323n");
  scanf("%f %f", &a, &b);
  c=cikar(a,b);
  d=(int)c;
  printf("Sonuc= %d", d);
   
  return 0;
}

Fonksiyonlarla hayat daha kolay :p

Leave a Comment :, , more...

Iki gercel sayinin toplaminin tam sayi cinsinden gosterimi

by on Mar.06, 2009, under ANSI C, Ödevler

#include stdio.h
#include stdlib.h

topla ( float x, float y )
{
      float z;
      z=x+y;
      return z;
}

int main()
{
  float a,b,c; 
  int d;
  printf("bosluk birakarak iki gercel sayi giriniz. Orn: 12.322 16.2323n");
  scanf("%f %f", &a, &b);
  c=topla(a,b);
  d=(int)c;
  printf("Sonuc= %d", d);
   
  return 0;
}

Fonksiyon belirleme ile %50 hiz artisi yapabilirsiniz :)

Leave a Comment :, , more...

İlk Ödevim: topla bol

by on Mar.06, 2009, under ANSI C, Ödevler

<strong>#include stdio.h
#include stdlib.h</strong>
 
float bol(a,b)
int a,b;
{
    float c;
      c = (float) a/b;
      return c;
}
 
int topla(d,z)
int d,z;
{
    int y;
    y= d + z;
    return y;
}
int main()
{
    int x,y,z;
    int toplananSayi;
    float bolunenSayi;
    printf("Aralarina virgul koyarak uc sayi giriniz, ORNEK 34, 22, 16 veya  9,3, 5 gibin");
    printf("Gireceginiz ilk iki sayi toplanacak ve ucuncu sayiya bolunecektir.n");
    scanf("%d, %d, %d", &amp;x, &amp;y, &amp;z);
    toplananSayi=topla(x,y);
    bolunenSayi=bol(toplananSayi,z);
    printf("Sonuc %f dir", bolunenSayi);
 
  system("PAUSE"); 
  return 0;
}

Fonksiyonla bu islemi daha kolaylastirabilirdik :)

Leave a Comment :, , , , more...

C Programlama Diline Başladım :)

by on Mar.06, 2009, under ANSI C

Çok sevdiğim bir arkadaşım, Rıfat Çölkesenin kitabını yollaması üzerine C ‘ ye başladım.

 Genel olarak kolay anlatımı sayesinde hızlı ilerleyebileceğimi düşünsemde

son sınıf olmam hasebiyle bu süreç uzayadabilir.

 

Fakat, azimle bu dili bitireceğime inanıyorum.

Leave a Comment :, more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Blogroll

A few highly recommended websites...