Object-Oriented Programming Laboratuvar 10

Benzer belgeler
#ifndef FATURA_H #define FATURA_H

#ifndef COMPLEX_H #define COMPLEX_H

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

Object-Oriented Programming Lab 4. - Sıcaklık değeri, Kelvin biriminde saklansın. Varsayılan sıcaklık değeri K olsun.

Object-Oriented Programming Lab Shape, TwoDShape, ThreeDShape, Disk, Square, Sphere, Cube class hiyerarşisi.

Ad Soyad: İmza: Object-Oriented Programming Quiz 4 60dk. Kapalı kitap. Kapalı defter. Kapalı cep telefonu. Hesap makinesi yok.

C++ Class larina baslangic. C++ Versus C Object-oriented Language C++ Structure dan Object Create etmek. Structure tanimlama.

Object-Oriented Programming Laboratuvar 11

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

Fall Object-Oriented Programming Laboratory 02 - Structures

#ifndef VEKTOR_H #define VEKTOR_H. struct vektor_s { double x; double y; double z; }; typedef struct vektor_s vektor_t;

Fall Object-Oriented Programming Laboratory 03

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ Published by Juan Soulié

1 PROGRAMLAMAYA GİRİŞ

const objects & const member functions const objects ve const functions Data Member Initializer List Data Member Initializer List

C++ Dersi: Nesne Tabanlı Programlama

const objects & const member functions

BTEP243 Ders 3. class Yazım Kuralı:

NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş

TEMPLATES. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1

işlemler bittikten sonra dosyaların kapatılması uygun olacaktır. Bunun için, fclose(fin);

C ++ Ders 6. Çoklubenzesim

KONU 7: DOSYA İŞLEME ( File Processing )

Programlamaya Giriş Karar Yapıları, Tekrarlı İfadeler(Döngüler)

Inheritance. Inheritance (turetim)

DERSİN WEB SİTESİ:

C++ ile Nesneye Dayalı Programlama

10/17/2007 Nesneye Yonelik Programlama 3.1

The statement. const Time noon( 12, 0, 0 );

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

C++ Dersi: Nesne Tabanlı Programlama

Parçacık (Widget) Eren BAŞTÜRK

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

#include <stdio.h> int main(void) { FILE * dosya; dosya = fopen("soru1.txt", "w"); fprintf(dosya, "Merhaba Dunya!"); fclose(dosya); return 0; }

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama

Lab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;

Karma C/C + + Kodlama

Binary Tree nedir?uygulamas nasl yaplr?

C++ Dersi: Nesne Tabanlı Programlama

NESNEYE YÖNELİK PROGRAMLAMA THIS İŞARETÇİSİ, KOPYA YAPICI FONKSİYON, STATİK ELEMANLAR, ARKADAŞ SINIF VE FONKSİYONLAR,NESNE DİZİLERİ

C++0x - Sağ Taraf Değerine Bağlanan Referanslar (Rvalue References)

C++ Dersi: Nesne Tabanlı Programlama

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

BMT 101 Algoritma ve Programlama I 5. Hafta. Yük. Müh. Köksal Gündoğdu 1

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

En kucuk calisabilir birime satetement denir Statements semicolon (;) ile sonlanir Yalniz basina ; null statement i ifade eder

C++ Statements. { ve } arasında ifade edilen bir dizi statement bir compound statement (birleşik ifade) oluşturur.

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

Laboratuvar 2 Tek Kayıt Fonksiyonları

Java ile Nesneye Yönelik Programlama (Object Oriented Programming)

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

Nesne Yönelimli Programlamaya Giriş - 2. Cem Ahmet MERCAN 16/04/2009

BPR152-Algoritma ve Programlama II Uygulama -12

NESNEYE YÖNELİK PROGRAMLAMA

Veri Tabanı-I 9.Hafta

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

BMT 106 Algoritma ve Programlama II Bahar Dönemi

Kurucu Fonksiyonlar (Constructors)

Dinamik Diziler (Veri Yapıları 2. Bölüm)

Nesneye Yönelmek. veya sadece formülleri bilgisayarın anlayacağı dile çevirmeyi bilen birinin C++ kullanma yöntemleri. Gökhan Ünel

C# Çalışma Örnekleri

Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

C++ Dersi: Nesne Tabanlı Programlama

Yigin & Kuyruk {\} /\ Suhap SAHIN Onur GÖK

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

Pros and Cons of Pointers. Pointers. Avantajlar. Dezavantajlar

Görsel Programlama (Visual Programming)

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

BİLG Dr. Mustafa T. Babagil 1

NESNEYE YÖNELİK PROGRAMLAMA

C++ Giriş Ders 5 MSGSU Fizik Bölümü Ferhat ÖZOK

NESNEYE DAYALI PROGRAMLAMA 11. HAFTA UYGULAMA DERSİ

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Operator Aşırı Yükleme (Operator OverLoading)

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

İşletim Sistemleri. Dr. Binnur Kurt Omega Eğitim ve Danışmanlık İşletim Sistemleri

TEMPLATES. Kalıp-Parametrik Çok Şekillilik Nedir? Fonksiyon Kalıbı Tanımlamak. Örnek

Bölüm 8. Ayrık Küme. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 16

Bölüm 14 İleri C Konuları

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

C++ Operatörler (Operators)

Veri Yapıları Lab Notları 1

Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü

Programlama Dilleri 3

Örnek1: #include <iostream> #include <string> using namespace std;

NESNEYE YÖNELİK PROGRAMLAMA

MAT213 Bilgisayar Programlama I

/* Çember alanını hesaplar */

KOCAELİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Transkript:

Object-Oriented Programming Laboratuvar 10 12.11.2017 1. Aşağıda declaration ı verilen Time class ının definition ını yazın. Bir Time objesindeki zaman değerini bir saniye arttıran tick metodunu ekleyin. tick metodu, Time objesindeki zaman değerinin doğru olmasını sağlamalıdır. Bu sebeple dakika arttırma, saat arttırma işlemlerinin de doğru yapılması gerekmektedir. İstenilenleri yerine getirdikten sonra Time class ını ve tick metodunu test edin. 18:00:00 dan başlayarak bir Time objesini 24 saat boyunca tick ile arttırın. Her tick ten sonra objeyi konsola yazdırın. #ifndef TIME_H #define TIME_H class Time public: Time(int h=0,int m=0,int s=0); void sethour(int h); void setminute(int m); void setsecond(int s); int gethour() const; int getminute() const; int getsecond() const; void printmilitary() const; void printstandard() const; void tick(); private: int hour; int minute; int second; ; #endif // TIME_H #include "Time.h" #include <iostream> using std::cout; using std::endl; Time::Time(int h,int m,int s) sethour(h); setminute(m); setsecond(s); void Time::setHour(int h) if(0<=h && h<=23) hour = h;

hour = 0; void Time::setMinute(int m) if(0<=m && m<=59) minute = m; minute = 0; void Time::setSecond(int s) if(0<=s && s<=59) second = s; second = 0; int Time::getHour() const return hour; int Time::getMinute() const return minute; int Time::getSecond() const return second; void Time::printMilitary() const if(hour<10) cout << hour << ":"; if(minute<10) cout << minute << ":"; if(second<10) cout << second; void Time::printStandard() const

if(hour%12<10) cout << hour%12 << ":"; if(minute<10) cout << minute << ":"; if(second<10) cout << second; if(0<=hour && hour<12) cout << " AM"; cout << " PM"; void Time::tick() second++; if(second==60) second = 0; minute++; if(minute==60) minute = 0; hour++; if(hour==24) hour = 0; #include "Time.h" #include <iostream> using std::cout; using std::endl; int main(void) Time T(18,0,0); int t; for(t=0; t<24*60*60; t++)

T.printMilitary(); cout << "\t"; T.printStandard(); cout << endl; T.tick(); return 0; 2. Aşağıda tarif edilen Date class ını, gerek gördüğünüz özelliklerle birlikte oluşturun. Oluşturduğunuz class ın özelliklerini test etmek için kendi main fonksiyonunuzu yazın. - Bir Date objesindeki tarih değerini aşağıda verilen formatlarda konsola yazan metodlar olsun. DDD YYYY 12.11.2017 tarihi için: 342 2017 MM/DD/YY 12.11.2017 tarihi için: 11/12/17 Month DD, YYYY 12.11.2017 tarihi için: Kasım 12, 2017 - Yukarıda verilen formatlardaki yer alan değerleri alarak (yer almayanları almayarak) Date objesine ilk değer ataması yapan costructor metodları olsun. DDD YYYY Gün sırasını ve yıl alan bir constructor. Ay değeri gün sayısından hesaplansın. MM/DD/YY Gün, ay ve yıl değerlerinin tamamını alan bir constructor. Month DD, YYY Gün, ay ve yıl değerlerinin tamamını alan bir constructor. #ifndef DATE_H #define DATE_H class Date private: int day; int month; int year; public: Date(int ddd, int yyyy); Date(int mm, int dd, int yy); void ddd_yyyy(void) const; void mm_dd_yy(void) const; void month_dd_yyyy(void) const; void setday(int d); void setmonth(int m); void setyear(int y); bool leapyear(void) const; int daysofmonth(void) const; const char* monthname(void) const; ; #endif // DATE_H #include "Date.h"

#include <iostream> using std::cout; using std::endl; Date::Date(int ddd, int yyyy) setyear(yyyy); month = 1; day = 1; while(ddd>daysofmonth()) ddd-=daysofmonth(); month++; day = ddd; Date::Date(int mm, int dd, int yyyy) setyear(yyyy); setmonth(mm); setday(dd); void Date::ddd_yyyy(void) const int ddd=0, lpr; Date D(1, 1, year); for(lpr=1; lpr<month; lpr++) D.setmonth(lpr); ddd += D.daysofmonth(); ddd += day; if(ddd<10) cout << "00"; if(ddd<100) cout << ddd << " "; if(year<10) cout << "000"; if(year<100) cout << "00"; if(year<1000) cout << year; void Date::mm_dd_yy(void) const

if(month<10) cout << month << "/"; if(day<10) cout << day << "/"; if(year%100<10) cout << year; void Date::month_dd_yyyy(void) const cout << monthname() << " "; if(day<10) cout << " "; cout << day << ", "; cout << year; void Date::setday(int d) if(1<=d && d<=daysofmonth()) day = d; day = 1; void Date::setmonth(int m) if(1<=m && m<=12) month = m; month = 1; void Date::setyear(int y) if(0<=y) year = y; year = 1970; bool Date::leapyear(void) const if((year%4==0 && year%100!=0) (year%400==0)) return true; return false;

int Date::daysofmonth(void) const switch(month) case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 2: if(leapyear()) return 29; return 28; case 4: case 6: case 9: case 11: return 30; default: return 0; const char* Date::monthname(void) const static char monthnames[][16] = "Ocak", "Subat", "Mart", "Nisan", "Mayis", "Haziran", "Temmuz", "Agustos", "Eylul", "Ekim", "Kasim", "Aralik"; return monthnames[month-1]; #include "Date.h" #include <iostream> using std::cout; using std::endl; int main(void)

Date d_1(316, 2017); Date d_2(11, 12, 2017); cout << "d_1:" << endl; d_1.ddd_yyyy(); cout << endl; d_1.mm_dd_yy(); cout << endl; d_1.month_dd_yyyy(); cout << endl; cout << endl; cout << "d_2:" << endl; d_2.ddd_yyyy(); cout << endl; d_2.mm_dd_yy(); cout << endl; d_2.month_dd_yyyy(); cout << endl; cout << endl; return 0;