Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
6
Cevap
831
Tıklama
0
Öne Çıkarma
c++ dizi içerisinde aynı eleman var mı kontrolü
B
4 yıl
Er
Konu Sahibi

int dizi[] = { 1,10,2,2,3,8 };
bu dizideki ikililerin toplamını 2. bir diziye aktardım
int toplamdizi[8];
while (i <= dizisayisi1)
{

toplam = dizi + dizi[i + 1];
toplamdizi = toplam;
i++;

}

şimdi sorum şu toplamdizi diye bir dizi şuan mevcut ve elemanları 11,12,4,5,11 dir
hangi elemanların aynı olduğunu nasıl bulacağım
0.eleman ve 4. elemanın aynı olduğunu nasıl bulabilirim

Edit: Arkadaşlar kod tabiki bu kadar değil bunu çalıştırınca çalışmayacağını biliyorum sadece anlamanız için böyle yazdım





< Bu mesaj bu kişi tarafından değiştirildi Berk566 -- 18 Aralık 2021; 17:14:14 >

T
4 yıl
Yarbay

c++11 kullanmak serbest mi ? Çünkü bu tür problemlerin çözümünü kolaylaştıran fonksiyonları var.



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

B
4 yıl
Er
Konu Sahibi

açıkcası yasak diye bir şey yok ama hazır fonkisonlardan kaçmaya çalışıyorum


Bu mesaja 1 cevap geldi.
B
4 yıl
Binbaşı

İç içe iki tane for döngüsü ile yapabilirsiniz. i ve k değişkenlerini index olarak düşünürsek, i ve k nın farklı ve toplamdizi ve toplamdizi[k] nın aynı olduğu durumları kontrol ederek bulabilirsin



< Bu ileti Android uygulamasından atıldı >

B
4 yıl
Er
Konu Sahibi

dediğinizi anlamadım yazarak gösterir misiniz



T
4 yıl
Yarbay


#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;

void vektor_bas(vector<int> v){
  for_each(v.begin(), v.end(),[](int &k){cout<< k <<",";});}

int main() {
  vector<int> v{11,12,4,5,11};
  vector<int> sirali_v(v.size());
  copy(v.begin(), v.end(), sirali_v.begin());
  sort(begin(sirali_v), end(sirali_v));
  auto eleman = adjacent_find(begin(sirali_v), end(sirali_v));
  vektor_bas(v);
  if (eleman != end(sirali_v))
    cout << " da ayni eleman: " << *eleman << "\n";
  else
    cout << " da ayni eleman yok" << "\n"; }

> g++ -o program.exe -DDEBUG=9 -ansi -pedantic -Wall -g program.cpp -std=c++11
> ./program.exe
11,12,4,5,11, da aynı eleman: 11
c++11'deki adjacent_find ile bir vektördeki aynı olan elemanları bulabilirsin. Doğal olarak, diziyi vektöre cevirmek, vektörü sort ile sıralamak gibi birkaç ön hazırlık yaptıktan sonra.




Bu mesajda bahsedilenler: @Berk566
G
4 yıl
Yarbay

	int[] sayılar = { 1, 10, 2, 2, 3, 8 };
sayılar.Zip(sayılar.Skip(1), (ilk, ikinci) => ilk + ikinci).GroupBy(x => x).Where(g => g.Count() > 1).ToList().ForEach(z => Console.WriteLine(z.Key));
c# da böyle olabilir





< Bu mesaj bu kişi tarafından değiştirildi Gökşen PASLI -- 19 Aralık 2021; 13:4:20 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.