float a = 7, h = 3; printf("%f",(a*h)/2); ya da int a = 7 , h = 3; printf("%f",float((a*h)/2)); // işlemi float() fonksiyonuyla floata dönüştürüyorum. ya da int a = 7, h = 3; printf("%f",1.0*(a*h)/2); // 1.0 ' la çarpıyorum; 1.0 zaten 1 e eşit olduğu için sonucu değiştirmiyor ama float sayıya dönüştürüyor. yani ya değişkenlerinin float olması lazım, ya da onları 2. ve 3. örnekteki gibi floata dönüştürmen lazım. örnekler çoğaltılabilir benim aklıma bunlar geldi. |
Hocam o kadar uzatmana gerek yok aslında çok daha az kod yazarak işini halledebilirsin. Sorunlara gelince: #include<conio.h> yok, 0. değeri hesaplamana gerek yok. Çünkü 0. sayı diye birşey yok. Sayma sayıları 1 den başlar. Bunları düzelttikten sonra hala sorun yaşarsan kodunu tekrar paylaş bakalım. |
Bugün sınav olduk ve bu soruları pek anlamadım , aslında yaptım birşeyler ama doğrumu değilmi bilmiyorum. Mesela , x= 2 döndüğü zaman ne olacak ,continue diyip , x i 3 mü alacak ve printfde * basacakmı ? Eğer x= 3 olacaksa break olduğunda * basmadan alttaki if(i%3==0) continue yemi geçecek? if(i%3==0) continuede i=3 ise + basmadan döngünün enbaşınamı dönecek? < Resime gitmek için tıklayın > Birde şöyle soru vardı.Bunuda anlamadım ne biçim soru bu, bu iki soru kafamı çok karıştırdı , şimdiden teşekkür ederim :) < Resime gitmek için tıklayın > |
arkadaşlar üniye bu sene gidemedim seneye başlayacağımda c öğrenmek istiyorum visual studio tarzı komutları hazır veren ve kolay yazıp öğrenmemizi sağlayan bir program sölermisiniz c dilini çalışmam için |
o ödev bitti artık hocam ![]() #include<stdlib.h> #include<stdio.h> int main(){ int i; unsigned toss; printf("Enter the number of coin toss = "); scanf("%u",&toss); srand(toss); for(i=1;i<=10;i++){ toss=(1+(rand()%2)); if(toss==x) x+=1; if(toss==y) y+=1; } printf("%d%d,x,y"); getch(); return 0; } HATAYI ÇÖZEBİLECEK VARSA ÇOK SEVİNİRİM SAYGILAR.... |
#include <iostream> #include <stdlib.h> #include <cmath> #include <iomanip> using namespace std; int a[100], i, j, n, tmp, sonuc, toplam = 0, sayi; int bul(int a[], int bvks[]); int yanyana(int a[], int n); int dizitopla(int a[], int n); int diziortalama(int a[], int n); float sapma(int a[], int n); int varmi(int a[], int n); int main() { int eb=0, ek=0; int buyukVeKucukSayilar[10]; cout << "Dizi’ye kac tane eleman girilsin = "; cin >> n; for (i = 0; i < n; i++) { cout << "a" << "["<<i<<"]" << ".Elemani Giriniz = "; cin >> a; } yanyana(a, n); cout << "\n" << endl; cout << "Toplam = " << dizitopla(a, n) << endl; cout << "Ortalama = " << diziortalama(a, n) << endl; bul(a, buyukVeKucukSayilar); cout << "En buyuk = " << buyukVeKucukSayilar[0] << "\n"; cout << "En buyuk deger dizi sirasi = " << eb << "\n"; cout << "En kucuk deger dizi sirasi = " << ek << "\n"; cout << "En kucuk = " << buyukVeKucukSayilar[1] << "\n"; cout << "Sapma = " << sapma(a, n) << "\n"; cout << "Aradaki Toplam Sayi = " << varmi(a, n) << "\n"; system("pause"); return 0; } int dizitopla(int a[], int n) { int toplam = 0; for (i = 0; i < n; i++) { toplam = toplam + a; } return toplam; } int diziortalama(int a[], int n) { int ortalama; ortalama = dizitopla(a, n) / n; return ortalama; } int yanyana(int a[], int n) { for (int i = 0; i < n; i++) { cout << setw(10) << a; } } int bul(int a[], int bvks[]){ int enBuyuk, enKucuk, eb, ek = 0; int i; enBuyuk = a[0]; enKucuk = a[0]; for (i = 0; i < n; i++){ if (a > enBuyuk) enBuyuk = a; eb = i; if (a < enKucuk) enKucuk = a; ek = i; } bvks[0] = enBuyuk; bvks[1] = enKucuk; } float sapma(int a[], int n) { int i; float sapma = 0; for (i = 0; i < n; i++) { sapma += (a - diziortalama(a, n))*(a - diziortalama(a, n)); } return sapma; } int varmi(int a[], int n) { int i, j, min, max, x, say = 0; int temp; max = a[0]; for (i = 0; i<n; i++) { if (a>max) { max = a; } } min = a[0]; for (x = 0; x < n; x++) { if (a < min) { min = a; } } while (min != max) { say += 1; min++; } say = say - (sayi + 3); return say; } Beyler bu kodda 'yanyana' ve 'bul' için: must return a value hatası alıyorum. Nasıl çözerim? |
hocam çünkü iki fonksiyonuda int(tam sayı) olarak tanımlamışsınız ama dönen bi tam sayı yok ya return ile bir değer döndürceksiniz yada void olarak tanımlayacaksınız: void olarak:
|
ne hatası var ? Bence sonucu ekranda göremiyorsun çünkü her şeyi tırnak içinde yazmışsın printf("%d%d,x,y"); yerine: printf("%d %d" x, y); |
Belirtilen fonksiyonların içinde return deger; gibi bir değişken döndürmek gerekiyor. Fonksiyon türü void değilse diğer bütün tiplerde bunu yapman gerekir. Döndürdüğün değeri kullanmayacaksan int türünü kullanmanın bir anlamı yok void türünden de yapabilirsin.
|
Yok dostm onu duzelttim usigned li kisimda hata veriyor |
unsigned int toss = 0; |
dostum c dilini bilgisayarda yazıp uygulamak istiyorum öğrenmek açısından visual studio'da yazamıyoruz sanırsam.dev c plus plus dada hata veriyor bilgisayar nedense |
nasıl bir hata veriyor, işletim sistemi ne ? Visual studio'u neden çalıştıramıyorsun ?? |
visual studio 2005'i bilgisayar açıyorda onda c dili yazılmıyor diye biliyorum ben yazılıyormuydu? http://forum.donanimhaber.com/m_99437855/f_//tm.htm#99437855 dostum hata bu |
Merhaba C# ta böyle bir grafik yapmak istiyorum nasıl oluşturabilirim < Resime gitmek için tıklayın > |
C ve C++ Deitel & Deitel kitabı arıyorum nerden temin edebilirim |
Hocam ben c de yeniyim.Bir yerde takıldım.Simdi kullanıcıdan katagorisini istiyoruz a/A,g/G,y/Y .Anlasıldı üzere büyük ve kücük harfi tek bir kelimeye atamam gerekiyor.Tek tek if/else yapmaktansa switch/case yapsam diyorum ama bize hoca sadece tek bir esitlikteyken olan örnekler gosterdi. Yani hic 2 tane esitligi gostermedi. ( case a AND A : açık=a,A) gibi bir yapı varmıdır |
Örneğin;
Bir üçgen alan hesaplama formülü yazdım diyelim.
Formül: a * h / 2
a = 7, h = 3
7*3 = 21 /2 = 10,5 çıkması gerekirken 10.00000 gibi birşey çıkıyor. İstediğim 10,5 çıkması.
Bu mesaja 1 cevap geldi. Cevapları Gizle