![]() |
|
|||||||
| Kayıt ol | Albümler | Bloglar | Yardım | Takvim | Gruplar | Etiketler | Arama | Bugünki Mesajlar | Bütün Forumları okunmuş kabul et |
|
|
![]() |
|
|
Konu Araçları | Stil |
|
|
#1 (permalink) | ||
|
Banlandı
![]() ![]() Üyelik tarihi: Kas 2007
Nerden: napıcan ziyaretemi geLcen!!
Mesajlar: 0
Konular: 2724
Üye No: 11416
Ruh halim:
Rep Gücü : 0
Rep Puanı : 0
Rep Seviyesi :
![]() |
Program komut satırından aşağıdaki gibi çalıştırılıyor. negunu gun ay yil ay degeri sayı olarak girilebildiği gibi yazı olarak da girilebilir. Geçersiz bir tarih girildiğinde program girilen tarihin geçersiz olduğunu bildiriyor.
Kod:
/*** negunu.c ******/
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#define isleap(y) ((y) % 4 == 0 && (y) % 100 != 0 || (y) % 400 == 0)
int dayofweek(int d, int m, int y)
{
static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
y -= m < 3;
return (y + y / 4 - y / 100 + y / 400 + t[m - 1] + d) % 7;
}
int main(int argc, char **argv)
{
int day, mon, year;
static const char *days[] = {"Pazar", "Pazartesi", "Sali", "Carsamba", "Persembe", "Cuma", "Cumartesi"};
static const char *mons[] = {"Ocak", "Subat", "Mart", "Nisan", "Mayis", "Haziran", "Temmuz",
"Agustos", "Eylul", "Ekim", "Kasim", "Aralik"};
int daytabs[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (argc != 4) {
fprintf(stderr, "<negunu> <gg> <aa> <yyyy>\n");
return 1;
}
day = atoi(argv[1]);
if (day < 1 || day > 31) {
fprintf(stderr, "gecersiz bir gun degeri girdiniz!\n");
return 2;
}
if (isdigit(*argv[2]))
mon = atoi(argv[2]);
else {
int k;
for (k = 0; k < 12; ++k)
if (!stricmp(mons[k], argv[2]))
break;
if (k < 12)
mon = k + 1;
else
mon = 0;
}
if (mon < 1 || mon > 12) {
fprintf(stderr, "gecersiz bir ay degeri girdiniz!\n");
return 3;
}
year = atoi(argv[3]);
if (year <= 0) {
fprintf(stderr, "gecersiz bir yil degeri girdiniz!\n");
return 4;
}
if (isleap(year))
daytabs[2] = 29;
if (day > daytabs[mon]) {
fprintf(stderr, "gecersiz bir gun degeri girdiniz!\n");
return 5;
}
fprintf(stdout, "%s\n", days[dayofweek(day, mon, year)]);
return 0;
}
|
||
|
|
|
![]() |
| Bu konunun kısa yolunu aşağıdaki sitelere ekleyebilirsiniz! |
| Konu Araçları | |
| Stil | |
|
|
Benzer Konular
|
||||
| Konu | Konuyu Başlatan | Forum | Cevaplar | son Mesaj |
| Windows XP nin Ne Anlama Geldiğini Biliyor Musunuz ? | Ghost_Leaf | Garip olaylar | 2 | 30-03-2008 15:56 |
| Hangi Program Ne işe Yarar-1 | WaMPiR_CaDı | Nokia | 2 | 11-03-2008 18:39 |
| Hangi Yaratık Ne Kadar Vurur Doğrusunu Yazan Yokmu !!! | mokaristan | Metin2 Genel | 3 | 07-03-2008 16:29 |
| Hangi Program Ne işe Yarar-2 | WaMPiR_CaDı | Nokia | 1 | 17-02-2008 16:07 |
| Sizce Hangi Program Daha Komik??? | ottomans | Anket | 20 | 30-01-2008 21:30 |