- Milyen TV-t vegyek?
- HiFi műszaki szemmel - sztereó hangrendszerek
- Gaming notebook topik
- 3D nyomtatás
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD vs. INTEL vs. NVIDIA
- Milyen belső merevlemezt vegyek?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- TCL LCD és LED TV-k
- Csendben mutatkozott be a Galaxy S10 Lite
Új hozzászólás Aktív témák
-
válasz
Des1gnR #1493 üzenetére
Közben rájöttem, hogy valószínűleg jó az algoritmus, előbb van a baj.
Találkoztatok már olyannal, hogy egy tömb i-edik elemére hivatkozva minden szám szépen kiíródik viszont az i+1-re hivatkozva csak szemét(-858993460) íródik ki
Más tömbnél is ugyan így hivatkozok és ott működik.#1495: de ha túl is indexelem akkor csak azoknak kéne ezt az értéket kapniuk amit túl indexeltem nem? Egyébként nincs különbség a két tömb között méretben és adatok számában, és a másikkal nincs ilyen gond.
-
WonderCSabo
félisten
válasz
Des1gnR #1487 üzenetére
sort - ot használva így tudod rendezni:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct mystruct
{
mystruct(int pa, int pb, int pc, int pd, char pe) : a(pa), b(pb), c(pc), d(pd), e(pe) {}
int a, b, c, d;
char e;
};
struct mysortbyfourth // ez a funktor lesz az osszehasonlito
{
bool operator() (const mystruct& first, const mystruct& second)
{
return first.d < second.d;
}
};
int main()
{
vector<mystruct> v;
v.push_back(mystruct(7, 23, 31, 164, 'F')); //nyilvan Neked a faljbol kell beoltened az
v.push_back(mystruct(7, 23, 33, 167, 'F')); //elemeket, en csak beszurtam 3 peldat
v.push_back(mystruct(7, 24, 11, 121, 'A'));
mysortbyfourth mysort;
sort (v.begin(), v.end(), mysort); //az elejetol a vegeig, a definialt osszehasonlitas szerint rendezi
return 0;
} -
modder
aktív tag
válasz
Des1gnR #1480 üzenetére
Miért próbálod meg egy char* tömbbe átkopizni a buffered egyik sorát?
egyébként az valszeg működik. ami nem működik az a while feltételed. a while-nak bennmaradási feltételre van szüksége. csinálja amíg igazwhile(a(i)=='A' || a(i)=='F'); itt már kapásból ki fog lépni, mert ez hamis lesz.
próbáld ki ezt: while(a(i)!='A' && a(i)!='F');
Ha pedig meg akarod könnyíteni az életed, akkor:
int n,i=0;
cout<<"Melyik sorban?"<<endl;
cin>>n;
i = olv_buffer2[n].length() - 1;
while( olv_buffer2[n].at(i) != 'A' && olv_buffer2[n].at(i) != 'F' ){
// hatulrol keresunk, mert az utcso karakter, de akar meg lehet whitespace is utana
i--;
}
cout<<olv_buffer2[n]<<endl;
cout<<olv_buffer2[n].at(i)<<endl; -
modder
aktív tag
válasz
Des1gnR #1478 üzenetére
Hali
Ez mi?
do{
i++;
}while(olv_buffer[n,i]=='A' || olv_buffer[n,i]=='F');
cout << "A karaket: "<<olv_buffer[n,i]<<endl;Nem emlékszem, hogy valaha is ilyen módon kellett volna címezni tömböt C-ben.
Plusz miért lenne az olv_buffer egy többdimenziós tömb?Amúgy ahogy ezt előbb is írták kb. ilyesmire: olv_buffer[ olv_buffer.length()-1 ] -re vizsgálj.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- AKCIÓ! MSI Z77 MPOWER Z77 chipset alaplap garanciával hibátlan működéssel
- 24 hónapos PlayStation Plus Premium előfizetés a legolcsóbban, egyenesen a PlayStation-től!
- GYÖNYÖRŰ iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3083
- Lian Li HydroShift LCD 360R/TL AIO vízhűtés eladó!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9700X 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: FOTC
Város: Budapest