C/C++

  • Креатор на темата Креатор на темата Драган
  • Време на започнување Време на започнување
Да се напише програма која за даден цел број секунди кој се внесува од тастатура,ќе ги отпечати на екран соодветните вредности во часови,минути и секунди. На пример:
7555
7555 секунди се 2 часови,5 минути и 55 секунди.
Ај ако може мала помош околу задачава..знам дека е едноставна но не ми текнуваше како..:icon_lol:
Ај додека сум расположен вечерва за решавање :)
PHP:
#include <stdio.h>
int main(void)
{
  int sec;
  printf("Vnesete sekundi: ");
  scanf("%d", &sec);
  printf("%d sekundi se %d chasa, %d minuti i %d sekundi", sec, sec/3600, (sec%3600)/60, (sec%3600)%60);
}

Значи, часовите се пресметуваат како бројот на секунди/3600, минутите како остатокот од делењето за часовите/60 и секундите ти се остатокот од пресметката за минутите. :)
 
Ај додека сум расположен вечерва за решавање :)
PHP:
#include <stdio.h>
int main(void)
{
  int sec;
  printf("Vnesete sekundi: ");
  scanf("%d", &sec);
  printf("%d sekundi se %d chasa, %d minuti i %d sekundi", sec, sec/3600, (sec%3600)/60, (sec%3600)%60);
}

Значи, часовите се пресметуваат како бројот на секунди/3600, минутите како остатокот од делењето за часовите/60 и секундите ти се остатокот од пресметката за минутите. :)
Фала:icon_lol:
 
Ај некој да ми помогне.
Значи имам програм, пијано. Секоја буква ми е нота. Дали е возможно, кога ги свириш нотите, фреквенцијата да се запишува во некој текст документ. После од тој документ да може програмот да ги исчита фреквенциите, и да ги свири. Значи имам Beep(600,500). Сега ова ако се пушти ќе исвири 500 мс. Истото да се чита од документот аз да се свири. Се надевам ме сфативте.
Инаку јас мислам дека нема да може, али да прашам ипак :)
 
Ај некој да ми помогне.
Значи имам програм, пијано. Секоја буква ми е нота. Дали е возможно, кога ги свириш нотите, фреквенцијата да се запишува во некој текст документ. После од тој документ да може програмот да ги исчита фреквенциите, и да ги свири. Значи имам Beep(600,500). Сега ова ако се пушти ќе исвири 500 мс. Истото да се чита од документот аз да се свири. Се надевам ме сфативте.
Инаку јас мислам дека нема да може, али да прашам ипак :)

Додека притискаш копчиња, нека запишува програмот во низа што си притиснал и ако си направил да запишува колку долго. Потоа, откако си престанал си „свирење“, низата си ја зачувај во текст фајл.
Кога ќе сакаш да свири сам програмот, од документот ќе ги исчиташ податоците пак во низа и со неа ќе работиш.
Барем така мислам дека ќе биде.
Пробај...
 
Ај уше малце помош. Значи со низава си имам проблем, а веќе преку глава ми дојде. Го глеам пола саат програмов, и неможам да најдам кај е грешката. Еве го кодот, кога треба да ми ја испечати низата, ми печати еден број 983054... Немам појма зошто.

Код:
int main()
{
    vrt=150;
    frek=600;
    int c, frk;

    voved();

    while(1){
    c=getch();
    int niza[1000];
    int n;
    int k=0;

    niza[k]=c;
    k++;
    //cout<<c;
    if(c==8) {system("cls"); voved();}
    if(c==98) {frekvencija();}

    if(c==122) {vreme();}
    if(c==99) {noti();}
    if(c==118) {gotovimelodii();}

    if(c==49) {odanaradosta();}

    if(c==42) {system("cls"); pomos(); mesto(); cout<<"Dodatni opcii:"<<endl; mesto(); cout<<"Za bas stisnete TAB"<<endl;
                        cout<<"Za pistenje stisnete +"<<endl; mesto(); cout<<"Pritisnete bilo koe kopce za da prodolzite."<<endl;  getch(); system("cls"); voved();}

    if(c==9) {cout<<"BAS "; Beep(65, vrt);}
    if(c==43) {cout<<"PISTENJE "; Beep(2500, vrt);}

    if(c==97) {Beep(frek,vrt); cout<<"DO ";}
    if(c==115){Beep(frek+50,vrt); cout<<"RE ";}
    if(c==100){Beep(frek+100,vrt); cout<<"MI ";}
    if(c==102){Beep(frek+150,vrt); cout<<"FA ";}
    if(c==103){Beep(frek+200,vrt); cout<<"SOL ";}
    if(c==104){Beep(frek+250,vrt); cout<<"LA ";}
    if(c==106){Beep(frek+300,vrt); cout<<"SI ";}
    if(c==107){Beep(frek+350,vrt); cout<<"DO ";}

    if(c==120){for(n=0; n<k; n++){cout<<niza[k]<<endl;}}
    //if(c==120){break;}
    }
--- надополнето: Nov 20, 2011 10:43 PM ---
Се снајдов, готово.. :)
 
Ќе замолам некој поискусен програмер :гик: да ми реши една задача во C (пробав мн пати да ја решам ама мн грешки ма дава :(:mad::confused::place::sick:):
дадени се броевите 1 2 3 4 5 6 7 8, да се испечатат сите 6 цифрени броеви што можат да се состават, но да важи следниот услов npnpnp (n-непар,p-пар), и колку такви броеви постојат.
Задачата треба да се реши со функција (до таму сме стигнати со предавања).
Фала однапред
 
Ќе замолам некој поискусен програмер :гик: да ми реши една задача во C (пробав мн пати да ја решам ама мн грешки ма дава :(:mad::confused::place::sick:):
дадени се броевите 1 2 3 4 5 6 7 8, да се испечатат сите 6 цифрени броеви што можат да се состават, но да важи следниот услов npnpnp (n-непар,p-пар), и колку такви броеви постојат.
Задачата треба да се реши со функција (до таму сме стигнати со предавања).
Фала однапред

Не сум баш искусен но некоја рекурзија би била прекрасно решение ... од тип направи циклус кој ќе ги врти сите внесени цифри и ќе ги маркира како почетни во привремена низа. Ако должината на добиената привремена низа е помала од 6, а притоа е исполнет условот да претходната цифра се разликува од моменталнатапо парност додади ја кон низата и повикај се себе си ... и така до недоглед нели :) По секој исполент услов врати го го циклусот за еден чекор наназад, односно продолжи натаму без рекурзивно повикување и продолжи во следната можна гранка на развој на низата.
Незнам дали ме конташ или не, ама ни сам не се контам :) .... така да дај код и објаснување каде грешиш или мислиш дека грешиш, а решение (барем од мене) не добиваш ... евентуално насоки ... иако не гледам јасна насока, кривудав ми е патот вечрва :)
 
Не сум баш искусен но некоја рекурзија би била прекрасно решение ... од тип направи циклус кој ќе ги врти сите внесени цифри и ќе ги маркира како почетни во привремена низа. Ако должината на добиената привремена низа е помала од 6, а притоа е исполнет условот да претходната цифра се разликува од моменталнатапо парност додади ја кон низата и повикај се себе си ... и така до недоглед нели :) По секој исполент услов врати го го циклусот за еден чекор наназад, односно продолжи натаму без рекурзивно повикување и продолжи во следната можна гранка на развој на низата.
Незнам дали ме конташ или не, ама ни сам не се контам :) .... така да дај код и објаснување каде грешиш или мислиш дека грешиш, а решение (барем од мене) не добиваш ... евентуално насоки ... иако не гледам јасна насока, кривудав ми е патот вечрва :)
Со овој код:
Код:
for(int i=100000;i<=888888;i++)
   
        {
   
        if(((i/100000)%2==1)&&(((i/10000)%10)%2==0)&&(((i/1000)%10)%2==1)&&(((i/100)%10)%2==0)&&(((i/10)%10)%2==1)&&((i%10)%2==0))
       
            {
       
            brojac++;
            cout<< i<<endl;
       
            }   
   
        }
ги добивам сите 6 цифрени броеви и се исполнува условот, но не треба да ги печатам броевите што ја содржат цифрата 9 и 0 (според условот се дадени броевите од 1 до 8),
ако можеш да ми помогнеш тука OK ќе бидит :)
 
Со овој код:
Код:
for(int i=100000;i<=888888;i++)
 
        {
 
        if(((i/100000)%2==1)&&(((i/10000)%10)%2==0)&&(((i/1000)%10)%2==1)&&(((i/100)%10)%2==0)&&(((i/10)%10)%2==1)&&((i%10)%2==0))
     
            {
     
            brojac++;
            cout<< i<<endl;
     
            } 
 
        }
ги добивам сите 6 цифрени броеви и се исполнува условот, но не треба да ги печатам броевите што ја содржат цифрата 9 и 0 (според условот се дадени броевите од 1 до 8),
ако можеш да ми помогнеш тука OK ќе бидит :)

Исто како што проверуваш пар непар со тоа што ќе имаш (cifra!=9) && (cifra!=0) //cifra=(i/x) % y;
Секако, ако ти е битна и едноставноста на кодот би можел таа проверка да ја правиш користејќи циклус.
 
Moze nekoj da mi dade resenie na slednava zadadaca vo C
Да се најдат сите зборови во некој текст внесен преку тастатура.
Објаснување: Зборовите во текст се одделени со едно или повеќе празни места. Значи почетокот на некој збор е по празно место, а по крајот на зборот има празно место.
 
Програмери од целиот свет обединете се!
После во другата тема пишувате дека сте програмери? :tapp:
 
Dali moze nekoj da mi pomogne so ovaa zadaca: 1+(1+2)+(1+2+3)...(1+2+...n) , treba da bide napisana kako potprograma vo pascal. blagodaram :)
 
Moze nekoj da mi dade resenie na slednava zadadaca vo C
Да се најдат сите зборови во некој текст внесен преку тастатура.
Објаснување: Зборовите во текст се одделени со едно или повеќе празни места. Значи почетокот на некој збор е по празно место, а по крајот на зборот има празно место.


Код:
#include <string.h>
#include <iostream>
using namespace std;
 
int main()
{
 
    char * zbor;
    char * delimiter = " ";
    char rechenica[999];
    cout<<"Vnesi rechenica: "<<endl;
    cin.getline(rechenica, 999);
    int brojach = 0;
    zbor  = strtok(rechenica, delimiter);
    while(zbor!=NULL)
    {
        brojach++;
        zbor = strtok(NULL, delimiter);
   
    }
    cout<<"Broj na zborovi: "<<brojach<<endl;
    getchar();
 
Што не е во ред со кодов? Задачата вели од низа со елементи цели броеви да се издвојат парните и непарните броеви во посебни поднизи.

Код:
#include <iostream>
using namespace std;
int main()
{
    int a[100], p[100], np[100];
    int i,n,j=0,k=0,m,l;
 
    cout<<"n = ";
    cin>>n;
    cout << "Vnesi gi elementite na nizata a \n";
    for (i=0;i<=n-1;i++){
        cout<<"a["<<i<<"]=";
        cin>>a[i];
    }
for (i=0; i<=n; i++)
    if (a[i]%2=0)
    {
        p[j]=a[i];
        j++;
    }
    else
    {
        np[k]=a[i];
        k++;
    }
    m=j; l=k;
    for(j=0; j<=m; j++)
    {
        cout<<p[j]<<endl;
    }
    for (k=0; k<=l; k++)
    cout<<np[k]<<endl;
    return 0;
}
 
Што не е во ред со кодов? Задачата вели од низа со елементи цели броеви да се издвојат парните и непарните броеви во посебни поднизи.

Код:
#include <iostream>
using namespace std;
int main()
{
    int a[100], p[100], np[100];
    int i,n,j=0,k=0,m,l;
 
    cout<<"n = ";
    cin>>n;
    cout << "Vnesi gi elementite na nizata a \n";
    for (i=0;i<=n-1;i++){
        cout<<"a["<<i<<"]=";
        cin>>a[i];
    }
for (i=0; i<=n; i++)
    if (a[i]%2=0)
    {
        p[j]=a[i];
        j++;
    }
    else
    {
        np[k]=a[i];
        k++;
    }
    m=j; l=k;
    for(j=0; j<=m; j++)
    {
        cout<<p[j]<<endl;
    }
    for (k=0; k<=l; k++)
    cout<<np[k]<<endl;
    return 0;
}
Оператор за споредба е (== а не =) и како читаш n-1 броеви, а сакаш да обработиш n броја.
 

Kajgana Shop

Back
На врв Bottom