30 Aralık 2009 Çarşamba
24 Aralık 2009 Perşembe
24 aralık sıralama
USES crt;
VAR
Dizi1:ARRAY[1..5] of integer;
i,j, temp : integer;
BEGIN
clrscr;
WRITELN('5 adet tam sayi degeri giriniz');
for i := 1 to 5 do
READ(Dizi1[i]);
for j := 4 downto 1 do
begin
for i := 1 to j do
if(Dizi1[i] < Dizi1[i+1]) then
BEGIN
temp := Dizi1[i];
Dizi1[i] := Dizi1[i + 1];
Dizi1[i + 1]:= temp;
END;
end;
for i := 1 to 5 do
WRITE(Dizi1[i]:2,' ');
READLN;
READLN;
END.
17 Aralık 2009 Perşembe
17 Aralık- Dizinin Elemanlarının Ortalaması ve Sıralama
Dizinin:
a) En buyuk elemanını;
b) En kucuk elemanını;
c) Elemanlarının ortalamsını ekrana yazdıran bir program yazalım.
d) Diznin elemanlarını buyukten kucuge dogru sıralayalım.
Ekrana carpi yazdirilmasi
var i,j : integer;
begin
for i := 1 to 15 do
begin
for j := 1 to 15 do
begin
if (i = j) or (i + j = 16) then
write ('*') else write('-');
end;
writeln;
end;
readln;
end.
YILDIZ-4
PROGRAM YILDIZ;
USES CRT;
VAR i, j, a :INTEGER;
BEGIN
CLRSCR;
WRITELN('KLAVYEDEN TEK BIR SAYI GIRINIZ');
READ(a);
FOR
i:=1 TO a DO
BEGIN
FOR j:=1 TO a DO
BEGIN
IF (j=(a+1)/2) OR (i=(a+1)/2) THEN
WRITE('*')
ELSE
WRITE('-');
END;
WRITELN();
END;
READLN;
READLN;
END.
YILDIZ-4
---*---
---*---
*******
---*---
---*---
---*---
İÇİN;
PROGRAM YILDIZ;USES CRT;VAR i, j :INTEGER;
BEGINCLRSCR;
FORi:=1 TO 7 DO
BEGIN
FOR j:=1 TO 7 DO
BEGIN
IF (j=4) OR (i=4) THEN
WRITE('*')
ELSE
WRITE('-');
END;
WRITELN();
END;
READLN;
END.
17.12.2009 Dizilerle ilgili ornekler
----*
---**
--***
-****
*****
-****
-****
--***
---**
-----
----*----
---***---
--*****--
-*******-
*********
---*---
---*---
---*---
*******
---*---
---*---
---*---
********
*------*
*------*
*------*
*------*
*------*
********
a[]= { 4, 8, 3, 1, 18, 9, 21, 20, 5, 17}
****
********
***
*
******************
*********
*********************
********************
*****
*****************
1 2 3
4 5 6
7 8 9
10 11 12
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
10.12.2009-Dizideki Maksimum Sayıyı Bulma
TYPE SAYI= ARRAY[1..5] OF INTEGER;
VAR DIZI: SAYI;
i, max: INTEGER;
BEGIN
WRITELN('5 SAYI GIRINIZ.');
FOR i:= 1 TO 5 DO
READLN(DIZI[i]);
max:=DIZI[1];
FOR i:= 1 TO 5 DO
BEGIN
READLN(DIZI[i]);
IF DIZI[i] > max THEN
max := DIZI[i];
END;
WRITLN('EN BUYUK SAYI= ', max);
READLN;
END.
10 Aralık 2009 Perşembe
Diziler-Dosya OKuma-Yazdırma
Matrisle Tanım Tekniği ve Diziler
Yukaridaki gorsele iliskin yapilmasi beklenen şunlardır:
(a) renk farkliligi bilgisini iceren veri dosyasinin olusturulmasi;
(b) bu verilerin dosyadan okunarak, renklerin hangi oranlarda bulundugunun hesaplatilarak baska bir dosyaya yazdirilmasi.
Örnek:
Beyaz: % XXX oranında,
Kırmızı: % XXX oranında,
Turuncu : % XXX oranında,
Siyah: % XXX oranında kullanılmıştır.
6 Aralık 2009 Pazar
ÖDEV-3
veri dosyasinda yer alacak olan bolum:
23 5
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
0.8 2.15 1.5 2.15 1.5 2.15 1.5 2.15 1.5 2.15 1.5 3 1.5 2.15 1.5 2.15 1.5 2.15 1.5 2.15 1.5 2.15 0.8
1.5 0.425 1.075 2.75 0.7
sonuc dosyasinda istenenler:
- duvarın opak kısmının (1 nolu bölgelerin) alanı
- duvarın saydamlık oranı ( boş alanların toplam alana oranı)
- duvardaki kapı ve pencere oranları
5 Aralık 2009 Cumartesi
Program ORNEK1;
uses crt;
var n1,n2:integer;
veri1:text;
begin
clrscr;
writeln('Program basladı');
assign(veri1,'D:/DATA.txt');
reset(veri1);
repeat
readln(veri1,n1);
writeln(n1);
until eof(veri1);{Until end of file=until eof=Kontrol amaçlı}
writeln('Program sonuclandı');
close(veri1);
readln;
end.
Program ORNEK2;
uses crt;
var n:integer;
sonuc1:text;
begin
clrscr;
writeln('Program basladı');
assign(sonuc1,'D:/cikti.son');
rewrite(sonuc1);
writeln(sonuc1,'Program basladi');
writeln('Program sonuclandı');
close(sonuc1);
writeln('Bir tusa basınız');
readln;
end.
Program ORNEK 3;
var n1,n2:integer;
sonuc1,veri1:text;
TOP,CARP:integer;
begin
writeln('Program basladı');
assign(veri1,'D:girdi.txt');
reset(veri1);
assign(sonuc1,'D:/cikti.abc');
rewrite(sonuc1);
readln(veri1,n1);
readln(veri1,n2);
TOP:=n1+n2;
CARP:=n1*n2;
writeln(sonuc1,' 2 sayinin toplam');
writeln(sonuc1,TOP:6);
writeln(sonuc1,' 2 sayinin carpim');
writeln(sonuc1,CARP:6);
close(sonuc1);
close(veri1);
writeln('Bir tusa basınız');
readln;
end.
Program ORNEK1;
uses crt;
var n1,n2:integer;
veri1:text;
begin
clrscr;
writeln('Program basladı');
assign(veri1,'D:/DATA.txt');
reset(veri1);
repeatreadln(veri1,n1);
writeln(n1);
until eof(veri1);
writeln('Program sonuclandı');
close(veri1);
readln;
end.
Program ORNEK2;
uses crt;
var n:integer;
sonuc1:text;
begin
clrscr;
writeln('Program basladı');
assign(sonuc1,'D:/cikti.son');
rewrite(sonuc1);
writeln(sonuc1,'Program basladi');
writeln('Program sonuclandı');
close(sonuc1);
writeln('Bir tusa basınız');
readln;
end.
Program ORNEK 3;
var n1,n2:integer;
sonuc1,veri1:text;
TOP,CARP:integer;
begin
writeln('Program basladı');
assign(veri1,'D:girdi.txt');
reset(veri1);
assign(sonuc1,'D:/cikti.abc');
rewrite(sonuc1);
readln(veri1,n1);
readln(veri1,n2);
TOP:=n1+n2;
CARP:=n1*n2;
writeln(sonuc1,' 2 sayinin toplam');
writeln(sonuc1,TOP:6);
writeln(sonuc1,' 2 sayinin carpim');
writeln(sonuc1,CARP:6);
close(sonuc1);
close(veri1);
writeln('Bir tusa basınız');
readln;
end.
3 Aralık 2009 Perşembe
Matris kullanarak tanımlanan bir planın Pascal'a okutulması ve sonuçlarının bir dosyaya yazdırılması
6 6
1 1 1 1 1 1
1 2 2 1 3 3
1 2 2 1 1 1
1 2 2 1 1 6
1 1 1 5 1 6
1 4 1 1 1 1
0.2 4.5 0.2 2.0 1.2 2.0
0.2 0.5 0.2 2.0 1.2 7.0
____________________________________________
Pascal Kodu
program alan;
uses crt;
type kat=array[1..30,1..30] of integer;
dizi=array[1..30] of real;
var m:kat;
x,y:dizi;
i,j,is,js:integer;
t,top,t1,t2,t3,t4,t5,t6:real;
plan,cikti:Text;
begin
clrscr;
assign(plan,'z:plan.txt');
assign(cikti,'z:cikti.txt');
reset(plan);
rewrite(cikti);
read(plan,is,js);
writeln(cikti,'sonuclar');
write(cikti,'is ve js degerleri:');
write(cikti,is:2,js:2);
writeln(cikti);
writeln(cikti,'konutun plan duzeni:');
for i:= 1 to is do
begin
for j:= 1 to js do
begin
read(plan,m[i,j]);
write(cikti,m[i,j]);
end;
writeln(cikti);
end;
write(cikti,'x[j]:');
for j:=1 to js do
begin
read(plan,x[j]);
write(cikti,x[j]:6:1);
end;
writeln(cikti);
write(cikti,'y[i]:');
for i:=1 to is do
begin
read(plan,y[i]);
write(cikti,y[i]:6:1);
end;
writeln(cikti);
t1:=0;
t2:=0;
t3:=0;
t4:=0;
t5:=0;
t6:=0;
for i:=1 to is do
begin
for j:=1 to js do
begin
if m[i,j]<>0 then
t:=x[j]*y[i];
case m[i,j] of
1:t1:=t1+t;
2:t2:=t2+t;
3:t3:=t3+t;
4:t4:=t4+t;
5:t5:=t5+t;
6:t6:=t6+t;
end;
end;
end;
top:=t1+t2+t3+t4+t5+t6;
writeln(cikti,'duvar alani:',t1:6:2);
writeln(cikti,'sirkulasyon alani:',t2:6:2);
writeln(cikti,'yasama alani:',t3:6:2);
writeln(cikti,'banyo alani:',t4:6:2);
writeln(cikti,'yatak odasi alani:',t5:6:2);
writeln(cikti,'cocuk odasi alani:',t6:6:2);
writeln(cikti,'toplam alan:', top:6:2);
writeln('program sona erdi');
close(cikti);
close(plan);
readln;
end.
____________________________________________
Çıktı Dosyası (cikti.txt)
sonuclar
is ve js degerleri: 6 6
konutun plan duzeni:
111111
122133
122111
122116
111516
141111
x[j]: 1.0 1.0 1.0 1.0 1.0 1.0
y[i]: 0.2 4.5 0.2 2.0 1.2 2.0
duvar alani: 31.80
sirkulasyon alani: 13.40
yasama alani: 9.00
banyo alani: 2.00
yatak odasi alani: 1.20
cocuk odasi alani: 3.20
toplam alan: 60.60