Arama butonu
Bu konudaki kullanıcılar: 1 misafir
4171
Cevap
169367
Tıklama
3
Öne Çıkarma
Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (51. sayfa)
E
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: THGop

SORU1: Kullanıcının girdiği iki sayının OBEB ve OKEK değerlerini bulan aynı isimlerde iki fonksiyon
yazınız. OBEB ve OKEK fonksiyonları iki tane değer alacak sonucu geri dönecektir.

Allah razı olsun şimdiden :):)

#include <stdio.h>  

int okek(int,int);
int obeb(int,int);

int main() {
int sayi1,sayi2;
printf("1.Sayi:");
scanf("%d",&sayi1);
printf("\n2.Sayi:");
scanf("%d",&sayi2);
printf("\n\nOkek(%d,%d)=%d",sayi1,sayi2,okek(sayi1,sayi2));
printf("\n\nObeb(%d,%d)=%d",sayi1,sayi2,obeb(sayi1,sayi2));
getch();
return 0;
}

int okek(int x,int y){
int deger=1;
while(1){
if(deger%x==0 && deger%y==0)
return deger;
deger++;
}
}

int obeb(int x,int y){
int deger=1000;
while(1){
if(x%deger==0 && y%deger==0)
return deger;
deger--;
}
}


obebi en fazla 1000 bulabiliyor istersen orayı artırabilirsin, kolay gelsin





< Bu mesaj bu kişi tarafından değiştirildi eebm38 -- 25 Aralık 2012; 10:44:37 >
Bu mesaja 1 cevap geldi.
T
13 yıl
Er

Çok teşekkür ederim hemen deneyeceğim :)


Bu mesaja 1 cevap geldi.
T
13 yıl
Er

Ama sanırım bu C dilinde yazılmış. ben bunu C++ nasıl çevirebilirim?


Bu mesaja 2 cevap geldi.
M
13 yıl
Er

Sa usta.Abi bana balık oyununun kodları lazım c++ ta ya daha doğrusu kız arkadaşıma lazım ben c++ almıyorum.hareket ettirdiğimiz balık küçük olanları yedikçe büyüyor ve büyük balık bizimkini yerse bizimki ölüyor.Balık da yön tuşları ile hareket edecekmiş.Balıklar sadece sağ veya sadece soldan gelebilirmiş.Çok lazım usta ya yardımcı olabilirsen çok sevinirim ya kodlarmış sadece gerekli olan.Bir de bunlar visual basic 2010 kullanıyorlarmış.Yardımların için şimdiden teşekkürler usta



C
13 yıl
Onbaşı

quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: chipagat

quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: chipagat

quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: chipagat

bir sayı tahmin oyunu progamladım c de dogru sayı dogru yer için +1 dogru sayı yanlış yer için -1 koyacak 4 basamaklı sayılar için ancak -,+l degerler 5,6,7 gibi degerler geliyo napabilirim
edit :

#include <stdio.h>

void diziyeAktar(int sayi,int dizi[]);

int main(void)
{
int gizliSayi[3],tahmin[3],sayi1,sayi2,i,dogruTahmin=0,yanlisTahmin=1;

printf("Gizli Sayiyi Giriniz X=?\n");
scanf("%d",&sayi1);

if(sayi1<1000 || sayi1>9999)
{
printf("Girdi Uygun Degil\n");
return -1;
}

diziyeAktar(sayi1,gizliSayi);

while(sayi1 != sayi2)
{
printf("Tahmininizi Giriniz Y=?\n");
scanf("%d",&sayi2);

if(sayi2<1000 || sayi2>9999)
{
printf("Girdi Uygun Degil\n");
return -1;
}

diziyeAktar(sayi2,tahmin);

for(i=0;i<3;i++)
{
if(gizliSayi == tahmin)
{
dogruTahmin += 1;
}
else if(gizliSayi != tahmin)
{
yanlisTahmin += 1;
}


}
if(sayi1 == sayi2)
{
printf("Tebrikler Sayiyi Buldunuz\n");
scanf("%d",&i); /* programin hemen kapanmasini onler */
return -1;
}
printf("+%d\n",dogruTahmin);
printf("-%d\n",yanlisTahmin);
dogruTahmin = 0;
yanlisTahmin = 1;


}


scanf("%d",&i); /* Derleyici olarak Dev C++ ý kullanarak yazdým bu scanfin amaci programin hemen kapanmasini onlemek */

return 0;



}


/* Bu fonksiyon gelen integer sayiyi uzunluðu 4 olan bir boyutlu bir diziye atar */

void diziyeAktar(int sayi,int dizi[])
{
int temp=0,bolen=10,i=0,carpan=1;



for(i=0;i<4;i++)
{
temp = (sayi%bolen) / carpan;
sayi = sayi - (temp*carpan);
dizi[3-i] = temp;
bolen *= 10;
carpan *= 10;
}





}

Bu oyunu çok severim, çocukluğumdan beri hala daha oynarım :) Her basamak için olanını yazmıştım(seçenekli değil, algoritma otomatik olarak ayarlıyor). Yarın müsait vaktim olursa paylaşacağım.

bir arkadaş else yerine else if kullan dedi ama zaten else if li problem başka bi yerde ama bulamadım bi turlu

Bir şey fark etmiyor ki else, else if. Sadece yapıları farklı. Aynı işlemleri ikisiyle de yaparsınız.

Sorunuza gelince, bugün cevaplayacağım.

Ek: Yalnız gizli sayı girdisini bizim girmemizin bir anlamı yok. Random fonksiyonu ile PC'ye seçtirelim.

odevi verdim çalışmayan haliyle ama merak ediyourm

bir de istenen kendi sayımızdı ama random olması daha iyi olur :D

Dosyayı bulamadım tekrardan yazacağım. Grip geçsin, bu baş ağrısıyla bir şeyler yapamıyorum. Pseuducode ları ekleyeyim, yazacağım bugün dedim. Boş geçmek istemiyorum.

Aşağıda sayının basamaklara ayırma işlemi var. Gizli sayıya bu işlemi yapıp bir diziye aktarıyoruz. Tahmini sayıya da her girişte bu işlemi yapıp onu da bir diziye aktarıyoruz. Ve bu iki dizi elemanları arasında kıyaslama yapıyoruz. Eğer dizinin aynı basamağındaki elemanlar aynı ise artılara bir değer ekliyor, eğer dizinin bir basamağındaki eleman diğer basamağındaki elemanlarla aynı ise eksilere bir ekliyoruz(tercihe göre çıkartadabilirsin, ben artı yaptıydım değeri gösterirken -%d şeklinde print ediyordum).


//a= basamak sayısı-1 için: 

for(i=0;i<=a;i++)
{
gb[i]=gizli_sayi%10; // Burada elde ettiğimiz sonuç sayının en son rakamı
gizli_sayi=gizli_sayi/10; // Sayıdan bir basamak atıyoruz ve sonraki mod işleminde sondaki rakamı alıyoruz
}

// Yukarıda yapılan işlem 1234 sayısı için:
// 1234%10=4 dizi[0}=4;
// 1234/10=123 * küsürat alınmıyor int tipi olduğu için, bundan faydalanıyoruz
// 123%10=3 dizi[1]=3;
// 123/10=12
// 12%10=2 dizi[2]=2;
// 12/10=1
// 1 dizi[3]


Bu oyunda şöyle bir olay var. Rakamları farklı veya aynı olma durumu. Buna göre farklı algoritma yazalım, bendeki rakamları farklı için olandı fakat bulamadım. Ona göre karşılaştırmaları da algoritma haline dökeriz. Eğer basamak sayısı kişinin tercihine göre belirlenecekse algoritma halinde yapılmalı misal:

//gsb[i] gizli sayının basamaklarını tutan dizi, tsk[i] tahmin edilen sayının basamaklarını tutan dizi olsun. 
//a yine basamak sayısı-1 için:

for(i=0;i<=a;i++)
{
if(gsb[i]==tsk[i])
artı++;
}



Gibi... Burada da ek olarak

if(gsb==tsk[i+1])

gibi bir ifade ekleyebiliriz. Burada sorun bunu bir döngüye halletmek. Basamak sayısının kullanıcı tercihine göre belirlenmesi olayı biraz sıkıntıya sokuyor. Halledilemeyecek bir şey değil elbette, imkan olursa yarın onu da ekleyeceğim :)

Keşke yetişmesi gerektiğine dikkat etseydim, hasta masta daha iyi sonuç verirdik.

yok canım onemli değil emeğne ilgine sağlık bu arda geçmiş olsun tekrar



E
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: THGop

Ama sanırım bu C dilinde yazılmış. ben bunu C++ nasıl çevirebilirim?

henüz c++ ta kodların karşılığını bilmiyorum forumda bilen biri çevirir heralde



S
13 yıl
Yarbay

quote:

Orijinalden alıntı: THGop

Ama sanırım bu C dilinde yazılmış. ben bunu C++ nasıl çevirebilirim?

prirntf için yapı cout<<"yazılacak uyarı";
scanf yapısı cin>>x;

stdio.h yerine ... #include<iostream>

ve << >> operatörleri için using namespace std;

komutunu kullanıyorsun


Bu mesaja 1 cevap geldi.
S
13 yıl
Yüzbaşı

çözüldü





< Bu mesaj bu kişi tarafından değiştirildi scaryscreen -- 26 Aralık 2012; 19:00:20 >
Bu mesaja 1 cevap geldi.
L
13 yıl
Er

Sorum satır sayısıyla doğru orantılı iç içe üçgen çizmek. NOT1:Bayağı uğraştım ama kodları bir türlü toparlayamadım yardımcı olursanız sevinirim. NOT2:Soruda dizi olmayacak iç içe döngülerle yapılacak.Şimdiden teşekkürler!

< Resime gitmek için tıklayın >


Bu mesaja 1 cevap geldi.
T
13 yıl
Yüzbaşı

Beyler switch case yapısı içinde kullanılan contiue; komutu ne işe yarar. caselerin birinin sonunda break yerine continue olduğunu farz edin o case işletilirse ne olur?


Bu mesaja 1 cevap geldi.
C
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: TeaTone

Beyler switch case yapısı içinde kullanılan contiue; komutu ne işe yarar. caselerin birinin sonunda break yerine continue olduğunu farz edin o case işletilirse ne olur?

switch aslında döngü gibi çalışıyor ama döngü değil. Bu yüzden continue kullanamazsın. Kullansan da bu switch i değil switchin içinde bulunduğu while veya for döngüsüne etki eder.


Bu mesaja 1 cevap geldi.
T
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: crshr

quote:

Orijinalden alıntı: TeaTone

Beyler switch case yapısı içinde kullanılan contiue; komutu ne işe yarar. caselerin birinin sonunda break yerine continue olduğunu farz edin o case işletilirse ne olur?

switch aslında döngü gibi çalışıyor ama döngü değil. Bu yüzden continue kullanamazsın. Kullansan da bu switch i değil switchin içinde bulunduğu while veya for döngüsüne etki eder.

finalde şaşırtma amaçlı böyle bir soru geldi. 4 tane case vardı 2. casein sonunda continue vardı 3 casete break yoktu. 4. casete break vardı. Garip bir soruydu. continue'nun amacını anlayamadım o soruda.


Bu mesaja 2 cevap geldi.
C
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: TeaTone

quote:

Orijinalden alıntı: crshr

quote:

Orijinalden alıntı: TeaTone

Beyler switch case yapısı içinde kullanılan contiue; komutu ne işe yarar. caselerin birinin sonunda break yerine continue olduğunu farz edin o case işletilirse ne olur?

switch aslında döngü gibi çalışıyor ama döngü değil. Bu yüzden continue kullanamazsın. Kullansan da bu switch i değil switchin içinde bulunduğu while veya for döngüsüne etki eder.

finalde şaşırtma amaçlı böyle bir soru geldi. 4 tane case vardı 2. casein sonunda continue vardı 3 casete break yoktu. 4. casete break vardı. Garip bir soruydu. continue'nun amacını anlayamadım o soruda.

switch içinde continue varsa ve switch bir while veya for döngüsü içinde değilse zaten derlenmez hata verir. Oradaki continuelarda while veya for döngüsünün başına atlıycaktın. switch içindeki break de ise sadece switchden çıkıcak, while veya for dan değil.


Bu mesaja 4 cevap geldi.
T
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: crshr


Anladım teşekkürler.


Bu mesaja 2 cevap geldi.
B
13 yıl
Binbaşı

Vektörlerde kelimeleri nasıl yazdırabiliriz. Örneğin data.txt dosyamı aşağıdadaki linkte. Mesela oradaki noble gas olan bütün elementleri yazdırmam gerekiyor, saatlerdir uğraşıyorum yapamadım. Biri bana yardım etsin saat 4'te ödevi teslim etmem gerek.

sadece vektörlerde kelimelerin nasıl yazdırıldığını gösterseniz bile yeter.
http://www1.gantep.edu.tr/~bingul/ep578/docs/atomic.txt


Bu mesaja 1 cevap geldi.
G
13 yıl
Yarbay

quote:

Orijinalden alıntı: Beyaz Kartal

Vektörlerde kelimeleri nasıl yazdırabiliriz. Örneğin data.txt dosyamı aşağıdadaki linkte. Mesela oradaki noble gas olan bütün elementleri yazdırmam gerekiyor, saatlerdir uğraşıyorum yapamadım. Biri bana yardım etsin saat 4'te ödevi teslim etmem gerek.

sadece vektörlerde kelimelerin nasıl yazdırıldığını gösterseniz bile yeter.
http://www1.gantep.edu.tr/~bingul/ep578/docs/atomic.txt


Bak bir örnek yazdım. Bu bir string vektörü ve her eleman dosyanın bir satırı. writeVector() fonksiyonu içeriğe göre uygun olan elementleri yazdırıyor.

 
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;

void writeVector(vector<string> &vec, const char* content)
{
for(int i = 0; i < vec.size(); ++i) {
if(vec[i].find(content) != string::npos)
cout << vec[i] << endl;
}
}

int main()
{
string str;
vector<string> vec;
ifstream file("atomic.txt");

while(!file.eof()) {
getline(file, str);
vec.push_back(str);
}
file.close();

writeVector(vec, "Noble-gas");
return 0;
}


Bu mesaja 1 cevap geldi.
_
13 yıl
Er

Oncelikle iyi gunler ;
Programin amaci koordinat duzleminde 2 nokta arasindaki uzakligi bulma ,
bulma islemini yaparken struct yapi tiplerini kullanip ayri fonksiyonlarda islemleri gerceklestirip ana foknsiyona gondermek istedim fakat programin ' mesafe = mesafe_fon(&n1,n2); ' bu satirinda hata verdi ve nedenini bulamadim bilgilerinize sunar cozum onerilerinizi beklerim ..

#include <stdio.h>
#include <math.h>

struct noktatipi
{
int x,y;
};
struct noktatipi oku(void);
float mesafe_fon(struct noktatipi*,struct noktatipi*);

int main(void)
{
struct noktatipi n1,n2;
float mesafe;

n1 = oku();
n2 = oku();

mesafe = mesafe_fon(&n1,n2);
printf("2 nokta arasindaki mesafe :%0.2lf\n\n");

getch();
return 0;
}
struct noktatipi oku(void)
{
struct noktatipi gecici ;
printf("Noktanin X ve Y koordinatlarini giriniz :");
scanf("%d %d",&gecici.x,&gecici.y);
return(gecici);
}
float mesafe_fon(struct noktatipi *a,struct noktatipi *b)
{
float uz1 = pow((a->x - b->x),2);
float uz2 = pow((a->y - b->y),2);
return(sqrt(uz1+uz2));
}


Bu mesaja 1 cevap geldi.
M
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: _JamesCarter_

Oncelikle iyi gunler ;
Programin amaci koordinat duzleminde 2 nokta arasindaki uzakligi bulma ,
bulma islemini yaparken struct yapi tiplerini kullanip ayri fonksiyonlarda islemleri gerceklestirip ana foknsiyona gondermek istedim fakat programin ' mesafe = mesafe_fon(&n1,n2); ' bu satirinda hata verdi ve nedenini bulamadim bilgilerinize sunar cozum onerilerinizi beklerim ..

#include <stdio.h>
#include <math.h>

struct noktatipi
{
int x,y;
};
struct noktatipi oku(void);
float mesafe_fon(struct noktatipi*,struct noktatipi*);

int main(void)
{
struct noktatipi n1,n2;
float mesafe;

n1 = oku();
n2 = oku();

mesafe = mesafe_fon(&n1,n2);
printf("2 nokta arasindaki mesafe :%0.2lf\n\n");

getch();
return 0;
}
struct noktatipi oku(void)
{
struct noktatipi gecici ;
printf("Noktanin X ve Y koordinatlarini giriniz :");
scanf("%d %d",&gecici.x,&gecici.y);
return(gecici);
}
float mesafe_fon(struct noktatipi *a,struct noktatipi *b)
{
float uz1 = pow((a->x - b->x),2);
float uz2 = pow((a->y - b->y),2);
return(sqrt(uz1+uz2));
}

mesafe_fon(&n1,&n2);

& işareti n2'nin önünde eksik.


Bu mesaja 1 cevap geldi.
_
13 yıl
Er

quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: _JamesCarter_

Oncelikle iyi gunler ;
Programin amaci koordinat duzleminde 2 nokta arasindaki uzakligi bulma ,
bulma islemini yaparken struct yapi tiplerini kullanip ayri fonksiyonlarda islemleri gerceklestirip ana foknsiyona gondermek istedim fakat programin ' mesafe = mesafe_fon(&n1,n2); ' bu satirinda hata verdi ve nedenini bulamadim bilgilerinize sunar cozum onerilerinizi beklerim ..

#include <stdio.h>
#include <math.h>

struct noktatipi
{
int x,y;
};
struct noktatipi oku(void);
float mesafe_fon(struct noktatipi*,struct noktatipi*);

int main(void)
{
struct noktatipi n1,n2;
float mesafe;

n1 = oku();
n2 = oku();

mesafe = mesafe_fon(&n1,n2);
printf("2 nokta arasindaki mesafe :%0.2lf\n\n");

getch();
return 0;
}
struct noktatipi oku(void)
{
struct noktatipi gecici ;
printf("Noktanin X ve Y koordinatlarini giriniz :");
scanf("%d %d",&gecici.x,&gecici.y);
return(gecici);
}
float mesafe_fon(struct noktatipi *a,struct noktatipi *b)
{
float uz1 = pow((a->x - b->x),2);
float uz2 = pow((a->y - b->y),2);
return(sqrt(uz1+uz2));
}

mesafe_fon(&n1,&n2);

& işareti n2'nin önünde eksik.

Hay aksi bazen boyle ufak seyleri kacirip programda hata ariyorum ..

Yardiminiz icin tesekkurler...


Bu mesaja 1 cevap geldi.
K
13 yıl
Teğmen

C dilinde .csv uzantılı bir dosyadan okuma yapacağım.
mesela örnek csv dosyamız bu olsun;

;;;;;333:546;turk lirasi;44;00;;;;
;;;;4234234423423;;;;;;
;;;;;99:11;333:546;turk lirasi;44;00;;;;

şimdi ";" ve ":"leri atlayacağım. "333"u bir değişkene atayacağım. Sonra "546"i başka bir değişkene atayacağım. sonra "turk lirasi"nı bir stringe atayacağım.ve yine sayılar atanacak işte. Fakat alttaki satırı atlayıp tekrar diğer satıra gelip ordan okumaya devam edeceğim.

fseek falan kullanacağım ama nasıl kullanacağım bilmiyorum,mümkünse küçük bir örnek ile yardım ederseniz çok minnettar olurum.


Bu mesaja 1 cevap geldi.