İki Boyutlu bir dizinin çift satırlarını tek boyutlu bir diziye tek satırlarını tek boyutlu başka bir diziye taşımak istiyorum yardımcı olur musunuz ? |
Mod operatörü kullanacaksınız.
Sutunlarda işlem yapan kısım fonksiyona ayrılırsa daha sade bişi elde edilir ama algoritmasını anlayın yaparsınız zaten. @İsmail A. |
Pointer ve malloc kullanmam gerekmez mi cunku matrisin boyutunu ve elemanlarını kullanıcıdan alıyorum. Bu iki fonksiyonu kullanmaya çalıştım ama degerleri girerken hata veriyor. Sütunda yapacağım işlemleri ayrı fonksiyona nasıl alacağım hakkında bir fikrim yok ama yapabilirsem cok guzel olur yoksa icerisi bayagı karısacak |
Malloc kullanarak deger alabilirsiniz dinamik bir dizi elde edebilirsiniz elbette. Fakat tum bunlardan once sabit bir deger verin mesela max 20 20 olucak bu durumda 11 tane cift satir(0 satirindan 20. Satira kadar 11 tane cift satir var) Cift satir dizisinide 11x20=220 elemanli tanimlayin. Daha sonra nasil yapacaginizi cozup buna gore yapin.Fonksiyonlara bakin daha sonrasinda pointerlar ve daha sonra dinamik bellek yonetimi (malloc calloc vs.) Algoritmasini cozdukten sonra zaten kolaylikla dinamik diziye gore yazarsiniz diye dusnuyorum.sahip oldugum bilgiyle, bu kadar yardimci olabiliyorum malesef tam olarak kavrayamadigim icin henuz bu dinamik bellek yonetimi olayini bu kdar yardimci olabilecegim ;) |
1ve3 numaralı str lerin arasında bir bağ varmı ve neden 1 numaralı str pointer işaretiyle tanımlandı , bu örneği anlamadım biraz anlatırmısınız < Resime gitmek için tıklayın > |
![]() |
elektrik elektronik mühendisligi okuyan biri olarak c mi ogrenmılıyım yoksa c++ mı ? |
basit bi örnek mesela 100 kere zar atılsın burda nHile'de tanımlı numara herzaman çok gelir..:http://ideone.com/YkjPKJ |
Teşekkürler |
Ödevle ilgili bazı düzeltmeler oldu. Ödevi yazarken Satır Sütün düzenine dikkat etmeden örnekler vermişim. Yazacağınız kod parçası komut satırından çağrılırken bir tane matris bilgisini boyutları ile birlikte alacak. Windows da consolu açmak için çalıştır kısmına "cmd" yazmanız gerekli. sonrasında buradan istediğiniz uygulamayı çağırabilirsiniz. Bizim örneğimizde uygulamayı argüman vererek çağıracağız. Ping programı gibi. Çarşamba laboratuvar da denemesi yapılacaktır. myporg.exe 2 3 1 2 3 4 5 6 çağrısı 2x3 boyutlarında ve elemanları sırasıyla 1 2 3 4 5 6 olacak bir matris oluşturacak ve sonrasında uygulama bu matrisin her bir hücresindeki değerlerin belirli bir düzene göre olup olmadığını inceleyecek. Düzen ise şu şekilde olacaktır. Ardışık her iki hücreden biri komşu hücrelerin toplamı veya çarpımı olmak durumundadır. Tek satırlarda ilk hücre serbest başlar sonrasında toplam ve çarpım hücreleri sırası ile bir boşluk olacak şekilde gelir. Çift haneli satırlarda örneğin 2. satırda önce toplam veya çarpım kontrolü olacak hücre gelir sonra serbest hücre şeklinde devam edilir. Bu şekilde devam edildiğinde matris içindeki düzende yanyana hiç çarpım veya toplam sembolü gelmeyecek şekilde bir matris düzeni oluşur. Örneklerine düzeltilmiş ödev dokümanında bakabilirsiniz. Bu düzen sizin program içerisindeki kurmanız gereken kontrol algoritmasını oluşturacaktır. Dışarıdan girilen veriler matrise yerleştirildiğinde bu düzeni sağlamıyorsa ekrana "NOT MATCH" yazacak. sağlıyorsa "ACCEPTABLE" yazacaktır. Ödev 2 deki örnek için program aşağıdaki şekilde çağrılır. Program Çağrısı: myProg.exe 4 3 1 6 2 9 3 8 3 54 3 5 2 6 Ekran Çıktısı: ACCEPTABLE uygun olmayan örnek için: Program Çağrısı: myProg.exe 4 3 1 6 3 9 4 8 3 54 3 5 2 6 Ekran Çıktısı: NOT MATCH NOT: Programınızı debug etmek için ilk denemelerinizde matris deki değerleri elle kod için de vererek deneme yapabilirsiniz. Hercdefasında ilk iki arguman boyutu belirleyecek. Maksimum 20x20 boyut girilebileceği varsayılarak 20x20 lik bir matris de kontrollerinizi yapablirisiniz. ödev bu arkadaşlar ilk sınıfta olduğumuz için uğraştık ama yapamadık yardımcı olabilcek varsa seviniriz < Resime gitmek için tıklayın > #include <stdio.h> #include <stdlib.h> int main(int argx, char*argv[]) { int matris[20][20]; int line = atoi(argv[1]); int column = atoi(argv[2]); int i, j; for (i = 0; i < column; i++) { for (j = 0; j < line; j++) { matris[j] = atoi(argv[j + line*i + 3]); printf("%d\t", matris[j]); } printf("\n"); } return 0; } bir de bu var |
Tıklayınız.Burdaki api kodunu test etmek istiyordumki epoch da sorun çıktı anladığım kadarıyla epoch 1970 den buyanaki zanamanın saniye hali veya ayrı bir zaman dilimi anlamadım.Her neyse bunu nasıl tanımlayabilirim anladığım kadarıyla şuanki zamanı epoch cinsinden almış. Edit: var epoch = (DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;fakat bu programa tanımlamayamadım.https://github.com/Bottswana/SteamBot/tree/ExtraClasses/SteamBot |
Bana api fonksiyonları ve nasıl kullanılacağı hakkında bilgi lazım birisi yardım edebilir mi? |
#include <iostream> #include <stdlib.h> #include<math.h> #include<string> using namespace std; int main(void) { int ceviri; { long bin, dec = 0, rem, num, base = 1,binaryNumber,octalNumber=0,j=1,remainder,setbase; long int longint=0; string buf; cout << "1. ikilik" << endl; cout << "2. sekizlik" << endl; cout << "3. onluk" << endl; cout << "4. onaltilik" << endl; cout << "6. Cikis" << endl; cout << "Seciminiz:" << endl; cin >> ceviri; switch (ceviri) { case 1: cout << "Enter the binary number(1s and 0s) : "; cin >> num; bin = num; while (num > 0) rem = num % 7; dec = dec + rem * base; base = base * 2; num = num / 7; cout << "The decimal equivalent of " << bin << " : " << dec << endl; break; case 2: cout << "Enter any number any binary number: "; cin >> binaryNumber; while(binaryNumber!=0) remainder=binaryNumber%10; octalNumber=octalNumber+remainder*j; j=j*2; binaryNumber=binaryNumber/10; cout << "Equivalent octal value: " << octalNumber; break; case 3: long int longint=0; string buf; cin>>buf; int len=buf.size(); for(int i=0;i<len;i++) { longint+=( buf[len-i-1]-48) * pow(2,i); } cout<<setbase(16); cout<<longint; break; case 4: return EXIT_SUCCESS; default: cout << "Boyle bir islem yok." << endl; system ("pause"); return EXIT_FAILURE; } system ("pause"); return EXIT_SUCCESS; } } Dostum şu hatayı bir türlü çözemedim yardımcı olur musun? (yeniyim forum kullanmayı pek bilmiyorum kusura bakma) |
arkadaşlar merhaba, ödevimde bir kısımda takıldım, txt dosyasından stringleri okutup karakterlerden huffman ağacı oluşturulacak. Bu kısmı biraz yaptım. Daha sonra oluşan binary kodlardan kelimelerin binary kodları yazılacak. (örn: txt'deki kelimeler "ev" ve "evet" ise e:00 v:01 t:10 olur ev:0001 evet:00010010) Şablon sınıfı kullanamam. Nasıl ilerlemem gerek yardımcı olur musunuz? |
merabalar C# da progressbarın şeklini daıresel olarak yapmak istiyorum yardımcı olabilirmisiniz |
http://codeproject.com/Articles/30625/Circular-Progress-Indicator |
Form'umun klasöründen bir dosya çekmek istiyorum ancak nedense tam yolu vermem gerekiyor. Direk klasörden çekmenin herhangi bir yolu var mı ? Benim istediğim şekil: "\Dosya.asd" Fakat böyle olmuyor. VS13'ün kabul ettiği satır ise: "C:\Form'un olduğu klasör\Dosya.asd" Ben portable bir program yapmak istiyorum. Bu yüzden klasörün yeri değişse bile klasör'ün içindeki dosyalara erişilebilsin istiyorum. Tahminime göre Form'u flash belleğe atıp çalıştırsam dosya eksik hatası verecek. Yardım edebilir misiniz ? @lavara123 Hocam siz anlıyorsunuz galiba. Yardım ederseniz sevinirim :) |
hangi dil olduğunu yazmamışsınız ama? Neyse şu şekil deneyin birde "Dosya.asd" dediğiniz gibi bu dosya binary dosyanızın yanındaysa bu şekilde olması gerek |
C#'da da aynı mantıkla yapıyorsun. Zaten bu yazım tüm dillere uygulanabilir. Pseudo kod gibi, algoritma verilmiş.
Bu mesaja 1 cevap geldi. Cevapları Gizle