Not/Ortalama Hesaplama (Yardım)
-
hocalar olayı özetliyorum. elimizde 3 tür not tipi var. ve bu 3 türden 4'er sınav olduk diyelim.
yani sınavlarımız şöyle olsun : a1, a2 , a3, a4 b1, b2, b3, b4 c1, c2, c3, c4
normalde hepsinin ortalamasını almak basit bir şekilde halledilebilir ancak benim derdim bu noktada başlıyor.
a türü sınavların ortalamasını alıp bunu toplama %25 şekilde etki ettirmemiz gerekiyor.
b türü için de örnek olarak %45. c türü de %30 olsun.
öncelikle her türün kendi içinde aritmetik ortasını alıp, ardından belli katsayılarla toplama etki ettirmek istiyorum kısacası..
a-ort x %25 + b-ort x %45 + c-ort x %30 = genel toplam.
burada kullanacak olduğum kod tam olarak nedir?
-
(a1+a2+a3+a4)*25/400+(b1+b2+b3+b4)*45/400+(c1+c2+c3+c4)*30/400
-
UCANTENEKE bunu yazdı:
-----------------------------
(a1+a2+a3+a4)*25/400+(b1+b2+b3+b4)*45/400+(c1+c2+c3+c4)*30/400
-----------------------------hocam matematik dili dahilinde bunu biliyorum zaten benim olayım visual basic'te tam olarak nasıl kodlandığı..
-
geneltoplam=(a1+a2+a3+a4)*25/400+(b1+b2+b3+b4)*45/400+(c1+c2+c3+c4)*30/400
-
ltcelik bunu yazdı:
-----------------------------geneltoplam=(a1+a2+a3+a4)*25/400+(b1+b2+b3+b4)*45/400+(c1+c2+c3+c4)*30/400
-----------------------------
geneltoplam ve a1-4 b1-4 c1-4 şeklinde double değişknelerin olsun bunu yaz -
aslında problemi daha açık ortaya koyman gerekli..
tüm notlar a, b c grubunda m?
ve hepsi 1 den 4 indisli mi? mevcut mu?
buna göre algoritma değişir..
yani a1 a2 a3 vardır da a4 yoktur...
b1 b2 vardır
c1 c2 c3 c4 vardır.. bunslar göre değişir..
-
ltcelik bunu yazdı:
-----------------------------
aslında problemi daha açık ortaya koyman gerekli..
tüm notlar a, b c grubunda m?
ve hepsi 1 den 4 indisli mi? mevcut mu?
buna göre algoritma değişir..
yani a1 a2 a3 vardır da a4 yoktur...
b1 b2 vardır
c1 c2 c3 c4 vardır.. bunslar göre değişir..
-----------------------------ilk dönem için a1 ve a2, ikinci dönem için a3 ve a4
ilk dönem için b1 ve b2, ikinci dönem için b3 ve b4
ilk dönem için c1,c2,c3 ve c4, ikinci dönem için c5,c6,c7 ve c8.
birinci dönem için d1, ikinci dönem için e1
a'ların toplama etkisi : %20
b'lerin toplama etkisi : %30
c'lerin toplama etkisi : %20
d'nin toplama etkisi : %15
e'nin toplama etkisi : %15
-
valla kardeş visual basic bilmem
normal basic'de
10' bu program ağırlıklı nt ortalamsını hesaplar
20 DIM A(4), DIM B(4),DIM C(8),
25' YUKARIDA TANIMLADIĞIMZ A , B , C DİZİLERİNİ ALMAK İÇİN ÜÇ AYRI FOR NEXT DÖNGÜSÜ AÇACAĞIMA İÇ İÇE İKİ DÖNGÜ AÇIP DİZİ BYUTUNU N DEĞİŞKENİNE BAĞLAYIP ANAHTARLADIM N 1 İSE A 2 İSE B 3 İSE C DEĞİŞKENİ KLAVYEDEN ALINACAK. ASLINDA "CASE " KOMUTU DAKULLANILABİLİRDİ AMA BASICTE NASI KULLANILIYORDU UNUTTUM
30 FOR I=1 TO 3
50 IF I=1 OR 2 THEN N=4
70 IF I=3 THEN N=8
90 FOR J=1 TO N
100 IF I= 1 THEN PRINT "A"; J;"NOTUNU GIRINIZ" : INPUT A(J)
110 IF I= 2 THEN PRINT "B";J;"NOTUNU GIRINIZ": INPUT B(J)
120 IF I= 3 THEN PRINT "C";J;"NOTUNU GIRINIZ": INPUT C(J)
130 NEXT J
140 NEXT I
150 INPUT "D1 NOTUNU GIRINIZ"; D1
160 INPUT "E1 NOTUNU GIRINIZ"; E1
170 ABIR=0:AIKI=0:BBIR=0:BIKI=0:CBIR=0:CIKI=0:BDO=0:IDO=0
175' A LAR
180 FOR I=1 TO 4
190IF I<3 ABIR =ABIR+A(I):'BİRİNCİ DÖNEM NOTLARI TOPLANDI
200 IF I>=3 AIKI= AIKI+ A(I):'IKINCI DONEM NOTLARI TOPLANDI
210 NEXT I
220 FOR I=1 TO 4
215' B LER
230 IF I<3 BBIR =BBIR+B(I):'BİRİNCİ DÖNEM NOTLARI TOPLANDI
240 IF I>=3 BIKI= BIKI+ B(I):'IKINCI DONEM NOTLARI TOPLANDI
250 NEXT I
255 ' CLER
260 FOR I=1 TO 8
270 IF I<5 CBIR =CBIR+A(I):'BİRİNCİ DÖNEM NOTLARI TOPLANDI
280 IF I>=5 CIKI= CIKI+ A(I):'IKINCI DONEM NOTLARI TOPLANDI
290 NEXT I
295 INPUT " D1 NOTUNU GIRINIZ"; D1: INPUT "E1 NOTUNU GIRINIZ"; E1
300 PRINT " BIRINCI DONEM AGIRLIKLI NOT ORTALAMASI"
310 BDO=ABIR*.20/2+BBIR*.30/2+CBIR*.2/4+D1*.15: ' DİKKAT VERDİĞİN AĞIRLIK ÇARPANLARIN TOPLAMI 100 ETMİYOR D1 CARPANININ .3 OLMASI GEREK
320 PRINT BDO
330 PRINT "IKINCI DONEM ORTALAMASI"
340 IDO=AIKI*.20/2+BIKI*.30/2+CIKI*.2/4+E1*.15: ' DİKKAT VERDİĞİN AĞIRLIK ÇARPANLARIN TOPLAMI 100 ETMİYOR E1 CARPANININ .3 OLMASI GEREK
350 PRINT IDO
360 END
-
vize1,vize2,final punlarının soncunu veren program
Dim puan1, puan2, Final, Ortalama As Integer
System.Console.WriteLine("Öğrencinin 1.vizeden aldığı puanı giriniz")
puan1 = System.Console.ReadLine()
System.Console.WriteLine("Öğrencinin 2.vizeden aldığı puanı giriniz")
puan2 = System.Console.ReadLine()
System.Console.WriteLine("Öğrencinin Finalden aldığı puanı giriniz")
Final = System.Console.ReadLine()
Ortalama = (puan1 * 27 / 100) + (puan2 * 27 / 100) + (Final * 46 / 100)
System.Console.Write("dönem sonu notu= ")
System.Console.Write(Ortalama)
System.Console.ReadLine()
bunu düzenleyerek olur heralde çok basit bişey çalışırken bi yere not almışım ordan yapıştırdım :|
-
hocam son olarak editleyip şu hale getirdim ama yine sonuç vermiyor lanet olası :/
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim Qa, Qb, Qc, Qd, Qo, Ca, Cb, Cc, Cd, Co, Pa, Pb, Pc, Pd, Pe, Pf, Pg, Ph, Po, Ma, Ea, Ort As Integer
Qa = Val(TextBox1.Text)
Qb = Val(TextBox2.Text)
Qc = Val(TextBox3.Text)
Qd = Val(TextBox4.Text)
Qo = (Qa + Qb + Qc + Qd) * 20 / 400
Ca = Val(TextBox5.Text)
Cb = Val(TextBox6.Text)
Cc = Val(TextBox7.Text)
Cd = Val(TextBox8.Text)
Co = (Ca + Cb + Cc + Cd) * 3 / 40
Pa = Val(TextBox9.Text)
Pb = Val(TextBox10.Text)
Pc = Val(TextBox11.Text)
Pd = Val(TextBox12.Text)
Pe = Val(TextBox13.Text)
Pf = Val(TextBox14.Text)
Pg = Val(TextBox15.Text)
Ph = Val(TextBox16.Text)
Po = (Pa + Pb + Pc + Pd + Pe + Pf + Pg + Ph) *20 / 400
Ma = Val(TextBox17.Text) * 15 / 100
Ea = Val(TextBox18.Text) * 15 / 200
Ort = (Qo + Co + Po + Ma + Ea) / 1
TextBox19.Text = Ort
End Sub
-
Önceikle sayılarını ınteger değil ondalıklı sayı olarak tanımlaman lazım..