C/C++

Adb

Член од
10 октомври 2007
Мислења
2
Поени од реакции
0
Dali moze nekoj da mi kaze kako so c++ moze da se izvrsi prebaruvanje na fajlovi niz hard diskot, dali treba nekoi dodatni biblioteki?
 

Srcee

Unforgettable
Член од
29 април 2008
Мислења
5.275
Поени од реакции
3.496
Imam nekoi zadaci na laboratoriski sto gi pravime ali nemam bas posveteno vreme na SPA :) I jas sega go slusam. Prv pat go slusas ti i koja grupa si? :)
Ау тие се до негде лесни, нешто посложено ми треба за вежбање.
Втор пат го слушам, единствен предмет што го имам паднато до сега :tapp: и сеа морам да го пројдем. Па ќе се дружиме у недела на колоквиум колоквиум ухх :nesvest:
 
R

Reve0ke

Гостин
Ау тие се до негде лесни, нешто посложено ми треба за вежбање.
Втор пат го слушам, единствен предмет што го имам паднато до сега :tapp: и сеа морам да го пројдем. Па ќе се дружиме у недела на колоквиум колоквиум ухх :nesvest:
Е не е баш лесем предмет ама треба учење.
 

Srcee

Unforgettable
Член од
29 април 2008
Мислења
5.275
Поени од реакции
3.496
Е не е баш лесем предмет ама треба учење.
Па фала Богу дека не е лесен, од шест предмети (петти семестар + СПА) само СПА го учам, сите други два дена пред колоквиум.
Реков дека задачите од лаб се лесни колку-толку. Неспоредливи со тие што се паѓаат на испит.
 

ZoraNaSlobodata

Чоечко суштество
Член од
5 ноември 2008
Мислења
2.736
Поени од реакции
111
Dali moze nekoj da mi kaze kako so c++ moze da se izvrsi prebaruvanje na fajlovi niz hard diskot, dali treba nekoi dodatni biblioteki?
Ти требат функции како FindFirstFile() и FindNextFile(), исто корисна функција можи да ти биди SetCurrentDirectory(), ај сега потроши тро време на мсдн.

ПС:Претходното важеше ако платформата ти е Виндоус.
 
Член од
10 февруари 2008
Мислења
845
Поени од реакции
447
Природни броеви се запишани еден зад друг во бесконечна низа од цифри:12345678910111213... За зададен број n да се најде n-тата цифра во бесконечната низа.
Пример ако се бара 16та цифра.Треба да излезе 1.
 
Член од
21 ноември 2009
Мислења
29
Поени од реакции
11
Природни броеви се запишани еден зад друг во бесконечна низа од цифри:12345678910111213... За зададен број n да се најде n-тата цифра во бесконечната низа.
Пример ако се бара 16та цифра.Треба да излезе 1.

#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;
int numbOfDigits(int broj)
{
int numb = 0;
while(broj>0)
{
broj/=10;
numb++;
}
return numb;
}
int main(int argc, char *argv[])
{

cout<<" Vnesi ja dolzinata na nizata ";
int n =0; cin>>n;
cout<<" Koja cifra da se ispecati ";
int cif = 0;
cin>>cif;
int arr[n];
for(int i =0; i<n; i++)
cin>>arr;
int numbDigit = 0;
for(int i =0; i<n ;i++)
{
numbDigit+=numbOfDigits(arr);
if(numbDigit>=cif)
{
int st = pow((double)10,(double)(numbDigit - cif));
cout<<((int)(arr/st))%10<<endl;
break;
}
}
char x;
cin>>x;
return 0;
}
 
Член од
19 септември 2009
Мислења
14
Поени од реакции
2
Природни броеви се запишани еден зад друг во бесконечна низа од цифри:12345678910111213... За зададен број n да се најде n-тата цифра во бесконечната низа.
Пример ако се бара 16та цифра.Треба да излезе 1.
Еве ти едно "brute force" решение :) Го тестирав за n=[1,100] и работи правилно. Само ќе ти напоменам дека доколку трбеба да работиш со многу големи броеви треба да користиш 'long' наместо 'int' (подолу решено со 'int'), бидејќи ќе ти настане 'overflow'.

Код:
//pomosna funkcija sto vraka broj na cifri
int brojCifri(int broj){
    int cifri = 0;
    
    while(broj != 0){
        cifri++;
        broj /= 10;
    }
    
    return cifri;
}

//funkcijata sto bara n-ta cifra
int najdiCifra(int n){
    if(n<=9) return n;    //ako n<=9 vrati go n
    
    bool done = false;
    int cifri = 11, i = 10;    //'i' -tekoven broj; 'cifri' - momentalen broj na cifri vklucuvajki go 'i'-ot broj
    
    while(!done){    //dodeka ne dojdes do broj na cifri >= n
        if(cifri >= n){  
            done = true;    //zavrsi so baranje
        }
        else{
            i++;    //zgolemi go tekovniot broj
            cifri += brojCifri(i);    //azuriraj tekoven broj na cifri
        }
    }
    
    if(done){
        while(i && cifri>n){    //dodeka ne dojdes do baranata cifra, seckaj go brojot 'i' i namaluvaj broj na cifri
            i /= 10;
            cifri--;    
        }
        return i%10; //vrati rezultat
    }
    
    return -1;    //vrati (-1) ako nastanala greska
}
поздрав.
 
Член од
22 август 2009
Мислења
30
Поени од реакции
5
Имаш 9 едноцифрени броеви, 90 двоцифрени, 900 трицифрени итн. Тебе ти треба n-тата цифра. За да ја најдеш го одземаш бројот на i-то цифрени од n (n=n-i*број на i-то цифрени) додека не дојдеш до тоа дека i*(бројот на i-то цифрени)>=n. Попатно го додаваш на моменталниот број бројот на i-то цифрени. И така на крај цифрата која ја бараш ќе биде еднаква на бројот+(n+i-1)/i(ова е целобројно делење).
 

sickjoce

Ненормален
Член од
30 јуни 2007
Мислења
1.231
Поени од реакции
337
Ај лил хелп..Си форматираф комјутер и инсталирав повторно ц++ со 2.0 .нет а кога ке игврсам било каква програма ми дава not valid win32 application?
thnks
 
R

Reve0ke

Гостин
Ај лил хелп..Си форматираф комјутер и инсталирав повторно ц++ со 2.0 .нет а кога ке игврсам било каква програма ми дава not valid win32 application?
thnks
Ова шо збор тие?

и ти висуал ц++ имаш работено или обично ц++ преку devcpp компајлер?
 

Kajgana Shop

На врв Bottom