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

quote:

Orijinalden alıntı: Yarr

#include <stdio.h> 
#include <string.h>
#include <conio.h>

void sozluksiralama(char x[10][8]){

char gecici[8];
int i,j,k;

for(k=0; k<9; k++)
for(j=0; j<9; j++)
if( strcmp(x[j],x[j+1]) > 0 )
{
strcpy(gecici ,x[j]);
strcpy(x[j] ,x[j+1]);
strcpy(x[j+1],gecici);
}

for(i=0; i<10; i++)
printf("%s\n",x[i]);

}

int main()
{

char ingilizceterim[10][8] = { "Access", "Search", "Scan"};
sozluksiralama(ingilizceterim[10][8]);
getch();
return 0;

}


Sözlüksıralama(ingilizceterim[10][8]) kısmında hata veriyor hata da ,

Invalid conversion from 'char' to 'char(*)(8)'

ve tekrar aynı yerde ,

Inıtialazing argument 1 of 'void sozluksiralama(char(*)(8))'

Bir türlü anlayamadım sorunun kaynağını

http://ideone.com/Wq1vVZ

veya

http://ideone.com/dW6XDn

Ama bunun yerine çok daha iyi yöntemlerle bu işi yapabilirsin.


Bu mesaja 2 cevap geldi.
M
12 yıl
Onbaşı

Sorum
İnt i ;
for(i=1;1<15;i++)
{
for(y=1;y<=i;y++)
{
console.write(''*'');
}
console.write(''\n'');
}
Console.Readkey();
Bu programı yazdığmızda alt alta * amblemı sıralanıyor.Benım ıstedığım bu programı çalıştırdığımızda sayfanın 2 tarafındada yazması.(Mumkun olduğunca basıt olursa ıyı olur)



M
12 yıl
Er

Arkdaşlar benim bu ödevim 6 secenekli 6. seceneği olan yaş aralığı bulma yani 1000 öğrenci kayıtlı ise bu 100 öğrenci içinden 14 yaş ile 18 yaş arasındakileri veya 15 - 16 yaşındaki öğrencileri sıralaran kodu yazamıyoruz hata oluşuyor yardım edebilirmisiniz

void yasgrubu(){
int dizi[4];
FILE *veriler=fopen("d:\\telefon.txt","r");//dosyadan okutuyoruz
int tutTelno;//buble sort sıralama için ara eleman
char tutadi[12],tutsoyadi[12],tutdogumTarihi[4];//buble sort sıralama için ara eleman
if(sayacc==0){//sayac 0 ise verileri dosyadan okur aksi halde okumazsıralama yapar
sayacc++;//sayacın artırıldığını gösterir.
while(!feof(veriler)){
fscanf(veriler,"%d %s %s %s",&rehber[kackayitvar].telno,rehber[kackayitvar].adi,rehber[kackayitvar].soyadi,rehber[kackayitvar].dogumTarihi);
// printf("\n%d %s %s %d",rehber[kackayitvar].telno,rehber[kackayitvar].adi,rehber[kackayitvar].soyadi,rehber[kackayitvar].maas);

strcpy(tutdogumTarihi,rehber[kackayitvar].dogumTarihi);
kackayitvar++;// dosyadaki kayıt sayısını arttırıyor
dizi[0]=
printf("%s\n",tutdogumTarihi);
}


Bu mesaja 1 cevap geldi.
Y
12 yıl
Yarbay

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: Yarr

#include <stdio.h> 
#include <string.h>
#include <conio.h>

void sozluksiralama(char x[10][8]){

char gecici[8];
int i,j,k;

for(k=0; k<9; k++)
for(j=0; j<9; j++)
if( strcmp(x[j],x[j+1]) > 0 )
{
strcpy(gecici ,x[j]);
strcpy(x[j] ,x[j+1]);
strcpy(x[j+1],gecici);
}

for(i=0; i<10; i++)
printf("%s\n",x[i]);

}

int main()
{

char ingilizceterim[10][8] = { "Access", "Search", "Scan"};
sozluksiralama(ingilizceterim[10][8]);
getch();
return 0;

}


Sözlüksıralama(ingilizceterim[10][8]) kısmında hata veriyor hata da ,

Invalid conversion from 'char' to 'char(*)(8)'

ve tekrar aynı yerde ,

Inıtialazing argument 1 of 'void sozluksiralama(char(*)(8))'

Bir türlü anlayamadım sorunun kaynağını

http://ideone.com/Wq1vVZ

veya

http://ideone.com/dW6XDn

Ama bunun yerine çok daha iyi yöntemlerle bu işi yapabilirsin.

Mesela ne gibi yöntemler hocam ? Burada İngilizce-Türkçe , Türkçe ingilizce çeviri için basit bir program yazacağız bende iki yerde ayrı ayrı yazmak yerine fonksiyon tanımlamayı tercih ettim bu da sorun oluşturdu . Sizin dediğiniz yöntemler neler ?


Bu mesaja 1 cevap geldi.
H
12 yıl
Yüzbaşı

file.exist a tam hakim olmadığım için sorunu try cast ile hallettim teşekkürler zamanınızı ayırdığınız için



G
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: Yarr
Mesela ne gibi yöntemler hocam ? Burada İngilizce-Türkçe , Türkçe ingilizce çeviri için basit bir program yazacağız bende iki yerde ayrı ayrı yazmak yerine fonksiyon tanımlamayı tercih ettim bu da sorun oluşturdu . Sizin dediğiniz yöntemler neler ?

http://stackoverflow.com/questions/8767166/passing-2d-array-to-function


Bu mesaja 1 cevap geldi.
Y
12 yıl
Yarbay

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: Yarr
Mesela ne gibi yöntemler hocam ? Burada İngilizce-Türkçe , Türkçe ingilizce çeviri için basit bir program yazacağız bende iki yerde ayrı ayrı yazmak yerine fonksiyon tanımlamayı tercih ettim bu da sorun oluşturdu . Sizin dediğiniz yöntemler neler ?

http://stackoverflow.com/questions/8767166/passing-2d-array-to-function

Teşekkürler inceliyorum


Bu mesaja 1 cevap geldi.
G
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: Yarr

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: Yarr
Mesela ne gibi yöntemler hocam ? Burada İngilizce-Türkçe , Türkçe ingilizce çeviri için basit bir program yazacağız bende iki yerde ayrı ayrı yazmak yerine fonksiyon tanımlamayı tercih ettim bu da sorun oluşturdu . Sizin dediğiniz yöntemler neler ?

http://stackoverflow.com/questions/8767166/passing-2d-array-to-function

Teşekkürler inceliyorum

Senin yazdığın kodda herşey hardcoded diyeceğim cinsten. Fonksiyonunun ve kodunun daha efektif olması için double pointer ile beraber boyutları gönderip çalışabilirsin. Tabi biraz daha karışık olur. vector daha çok tercih edileblir. Tabi yapacağın şeye göre değişir.


Bu mesaja 1 cevap geldi.
K
12 yıl
Yarbay

Çift taraflı sorgularda null değer için alt sorgu kullanmak tek mantıklı yol sanki. We like hardcore



< Bu ileti tablet sürüm kullanılarak atıldı >

Y
12 yıl
Yarbay

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: Yarr

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: Yarr
Mesela ne gibi yöntemler hocam ? Burada İngilizce-Türkçe , Türkçe ingilizce çeviri için basit bir program yazacağız bende iki yerde ayrı ayrı yazmak yerine fonksiyon tanımlamayı tercih ettim bu da sorun oluşturdu . Sizin dediğiniz yöntemler neler ?

http://stackoverflow.com/questions/8767166/passing-2d-array-to-function

Teşekkürler inceliyorum

Senin yazdığın kodda herşey hardcoded diyeceğim cinsten. Fonksiyonunun ve kodunun daha efektif olması için double pointer ile beraber boyutları gönderip çalışabilirsin. Tabi biraz daha karışık olur. vector daha çok tercih edileblir. Tabi yapacağın şeye göre değişir.

O kadar karmaşık olmasına gerek yok hatta o şekilde yapmazsam daha iyi çünkü bunu sen yapmamışsın diyebilirler Bu arada yapacağım şey Kullanıcıya İngilizce-Türkçe , Türkçe-İngilizce , yeni kelime ekle gibi seçenekler oluşturmak , mevcut kelimeler arasından arama ve sıralama algoritmalarını kullanarak bir program yaratmak . Dediğim gibi o kadar hardcore programmer değiliz zaten bizden beklenen de o tarzda bir şey değil Sadece ikinci sınıf ödevi .





< Bu mesaj bu kişi tarafından değiştirildi Yarr -- 2 Nisan 2013; 0:11:49 >
Bu mesaja 1 cevap geldi.
D
12 yıl
Teğmen

C# da yazdığım bir projede veritabanı access kullanıyorum. 2-3 tablodan veriler çekerek çıktı almam gerekiyor. Bunu ne şekilde yapabilirim?


Bu mesaja 2 cevap geldi.
S
12 yıl
Yarbay

elde çalışan .exe dosyası varsa bunu kodunu çıkartabilir miyiz ?


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

arkadaşlar c++ ta proje konsol dosyasını aşağıdaki şekilde açamıyorum sanırım windows 8 uyumsuzluğundan dolayı
< Resime gitmek için tıklayın >

return 0 değerini veriyor system pause gelmiyor
her yeni projede aşağıdaki şekilde nasıl açabılırım

++ ek olarak derleme f9 değil f10 oluyor windows 8 de


Bu mesaja 1 cevap geldi.
S
12 yıl
Teğmen

quote:

Orijinalden alıntı: champions1905

arkadaşlar c++ ta proje konsol dosyasını aşağıdaki şekilde açamıyorum sanırım windows 8 uyumsuzluğundan dolayı
< Resime gitmek için tıklayın >

return 0 değerini veriyor system pause gelmiyor
her yeni projede aşağıdaki şekilde nasıl açabılırım

++ ek olarak derleme f9 değil f10 oluyor windows 8 de

başlat-çalıştır-regedit yaz sonra orda local de vsbasic dosyasını bul. orda system.pause yazan yeri 1 de 0 a çevir.



S
12 yıl
Teğmen

quote:

Orijinalden alıntı: srkndmrly

C# da yazdığım bir projede veritabanı access kullanıyorum. 2-3 tablodan veriler çekerek çıktı almam gerekiyor. Bunu ne şekilde yapabilirim?

yazıcı ile çıktı alabilirsin. hp nin her bütçeye uygun modelleri var.


Bu mesaja 1 cevap geldi.
S
12 yıl
Teğmen

quote:

Orijinalden alıntı: memocan023

Arkdaşlar benim bu ödevim 6 secenekli 6. seceneği olan yaş aralığı bulma yani 1000 öğrenci kayıtlı ise bu 100 öğrenci içinden 14 yaş ile 18 yaş arasındakileri veya 15 - 16 yaşındaki öğrencileri sıralaran kodu yazamıyoruz hata oluşuyor yardım edebilirmisiniz

void yasgrubu(){
int dizi[4];
FILE *veriler=fopen("d:\\telefon.txt","r");//dosyadan okutuyoruz
int tutTelno;//buble sort sıralama için ara eleman
char tutadi[12],tutsoyadi[12],tutdogumTarihi[4];//buble sort sıralama için ara eleman
if(sayacc==0){//sayac 0 ise verileri dosyadan okur aksi halde okumazsıralama yapar
sayacc++;//sayacın artırıldığını gösterir.
while(!feof(veriler)){
fscanf(veriler,"%d %s %s %s",&rehber[kackayitvar].telno,rehber[kackayitvar].adi,rehber[kackayitvar].soyadi,rehber[kackayitvar].dogumTarihi);
// printf("\n%d %s %s %d",rehber[kackayitvar].telno,rehber[kackayitvar].adi,rehber[kackayitvar].soyadi,rehber[kackayitvar].maas);

strcpy(tutdogumTarihi,rehber[kackayitvar].dogumTarihi);
kackayitvar++;// dosyadaki kayıt sayısını arttırıyor
dizi[0]=
printf("%s\n",tutdogumTarihi);
}

bu kodun doğru çalışması lazım. senin config dosyalarında bi sıkıntı var. config dosyalarını silip internetten yeni bir config dosyası indirebilirsin. bende de aynı şey olmuştu yaptım düzeldi.



L
12 yıl
Yarbay

quote:

Orijinalden alıntı: Seviyeli Yarbay

elde çalışan .exe dosyası varsa bunu kodunu çıkartabilir miyiz ?

benim bildiğim hayır. belki yapılabilen diller vardır ama c++'ta compile eidldikten sonra anca binary belki assembly kodu çıkarılabilir diye düşünüyorum.


Bu mesaja 1 cevap geldi.
E
12 yıl
Çavuş

arkadaşlar bu kodlarda neden hata veriyo. lütfen yardım edin.
 
#include<stdio.h>
#include<conio.h>
int *dizileribirlestir(int [], int, int [], int);
main()
{
int i,a,b,*p, *q, **sonuc;
printf("1.dizinin boyutu:");
scanf("%d", &a);
printf("2.dizinin boyutu:");
scanf("%d", &b);
int dizi1[a], dizi2[b];
for(i=0; i<a; i++){
printf("dizi1[%d]=", i);
scanf("%d", &dizi1[i]);
}
for(i=0; i<b; i++){
printf("dizi2[%d]=", i);
scanf("%d", &dizi2[i]);
}
p=dizi1;
q=dizi2;
sonuc=dizileribirlestir(dizi1, a, dizi2, b);
for(i=0; i<a+b; i++)
printf("yenidizi[%d]=%d\n", i, **(sonuc+i));
getch();
}
int *dizileribirlestir(int dizi1[], int a, int dizi2[], int b)
{
int j, *r,yenidizi[a+b];
for(j=0; j<a;j++)
yenidizi[j]=dizi1[j];
for(j=0; j<a+b;j++)
yenidizi[j+a]=dizi2[j];
r=yenidizi;
return r;
}


Hata mesajı:
 
22 44 C:\Users\İlker\Desktop\deneme.cpp [Error] cannot convert 'int*' to 'int**' in assignment


Bu mesaja 1 cevap geldi.
Y
12 yıl
Yarbay

for(i=0; i<5; i++){
if (gecicidizi==NULL){}
else printf(",%s",gecicidizi);
}

C de boş elemanları atlamaya çalışıyorum ama NULL ile gerçekleştiremedim . Bunun kontrolünü ne şekilde yapabiliyoruz ?


Bu mesaja 1 cevap geldi.
G
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: ebubekir.s

arkadaşlar bu kodlarda neden hata veriyo. lütfen yardım edin.
 
#include<stdio.h>
#include<conio.h>
int *dizileribirlestir(int [], int, int [], int);
main()
{
int i,a,b,*p, *q, **sonuc;
printf("1.dizinin boyutu:");
scanf("%d", &a);
printf("2.dizinin boyutu:");
scanf("%d", &b);
int dizi1[a], dizi2[b];
for(i=0; i<a; i++){
printf("dizi1[%d]=", i);
scanf("%d", &dizi1[i]);
}
for(i=0; i<b; i++){
printf("dizi2[%d]=", i);
scanf("%d", &dizi2[i]);
}
p=dizi1;
q=dizi2;
sonuc=dizileribirlestir(dizi1, a, dizi2, b);
for(i=0; i<a+b; i++)
printf("yenidizi[%d]=%d\n", i, **(sonuc+i));
getch();
}
int *dizileribirlestir(int dizi1[], int a, int dizi2[], int b)
{
int j, *r,yenidizi[a+b];
for(j=0; j<a;j++)
yenidizi[j]=dizi1[j];
for(j=0; j<a+b;j++)
yenidizi[j+a]=dizi2[j];
r=yenidizi;
return r;
}


Hata mesajı:
 
22 44 C:\Users\İlker\Desktop\deneme.cpp [Error] cannot convert 'int*' to 'int**' in assignment


Bu iş öyle zor olur. Mantık hatasını geçersek for(j=0; j<a+b;j++) <-- buffer overflow bir fonksiyonun içinde tanımladığın diziyi geri döndürüyorsun. Fonksiyondan çıktığın an, memoryde Data segmentinde o alan bu yenidizi değişkenine ait olmaz. ÜStüne yazılabilir.

Senin asıl sorunun cevabı sonuç değişkenini double pointer olarak tanımlamandan kaynaklanmakta. Biraz incele bunu istersen.

#include<stdio.h> 
#include <stdlib.h>

//#include<conio.h>
int* dizileribirlestir(int*, int, int*, int);
int main()
{
int i,a,b;
int *sonuc;
//printf("1.dizinin boyutu:");
//scanf("%d", &a);
a=5;
//printf("2.dizinin boyutu:");
//scanf("%d", &b);
b=10;
int* dizi1 = (int*) malloc(a*sizeof(int));
int* dizi2 = (int*) malloc(b*sizeof(int));
for(i=0; i<a; i++){
//printf("dizi1[%d]=", i);
//scanf("%d", &dizi1[i]);
dizi1[i]=i;
}
for(i=0; i<b; i++){
//printf("dizi2[%d]=", i);
//scanf("%d", &dizi2[i]);
dizi2[i]=i;
}

sonuc=dizileribirlestir(dizi1, a, dizi2, b);

for(i=0; i<a+b; i++)
printf("yenidizi[%d]=%d\n", i, *(sonuc+i));
//getch();
free(dizi1);
free(dizi2);
free(sonuc);
}

int* dizileribirlestir(int* dizi1, int a, int* dizi2, int b)
{
int j;
int* yenidizi = (int*) malloc((a+b)*sizeof(int));
for(j=0; j<a;j++)
yenidizi[j]=dizi1[j];
for(j=0; j<b;j++)
yenidizi[j+a]=dizi2[j];

return yenidizi;
}