Autor |
Sõnum |
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
Minu esmane katsetus graafilise keskkonna jaoks miskit teha. See peab olema utiliit mis ruutvõrrandit lahendab. Ilma igasuguse ette vamistuseta on nii kaugele jõutud KDevelopi kasutades.
link: http://n6ges.pri.ee/ruutvorrand.tar.gz
Äkki see inimene vaatab üle selle asja ja viskab mõnel lingi normaalsele õppevahendile.
//tahaks loota, et läbi ei sõimata.
|
|
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
eric
Pingviini külastaja
Liitunud: 28.02.2007
Postitused: 34
Distributsioon: Ubuntu 9.10
|
|
laadisin paketi alla, kuid kuna ./configure "soovitas" kde arenduspakettide paigaldamist jätsin kompileerimise pooleli.
seejärel vaatasin lähtekoodi, kuid midagi otseselt sinu programmeeritud (peale akna disainimise) (veel) ei leidnud - kogu "kupatus" on enamjaolt kdevelop'i poolt genereeritud.
soovitaks võibolla alustada lihtsamast otsast - installeeri QT arenduspaketid (libqt4-dev, qt4-doc, qt4-dev-tools) ja uuri qt dokumentatsiooni (väga selge ja ülevaatlik + piisavalt näiteid). proovi sellessamas kdevelope-is mõni QT näide kompileerida ("tööle saada") ja siis sama näite lähtekoodiga "mängida" (i.e. seda muuta, seejärel kompileerida ning vaadata, kas programmi "käitumine" muutus nagu olid kavandand).
edu ja järjekindlust soovides!
e.
ps. alustasin kdevelop-i kasutamisega umbes 2 aasta eest ja nüüd ei vahetaks "teda" naljalt enam millegi muu vastu. eelnevalt olin ca 10 aastat kasutand (windoozis) borland c++ builderit. kdevelop on super ja ka qt-teegid (libraries) on super (ega's KDE muidu neil põhineks, vää ?)
|
|
|
|
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
jah tõsi peale akna disaini ei suutudki mikit teha..
järgmine katsetus....
Kood: | #ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <iostream>
#include <cstdlib>
#include <math.h>
using namespace std;
int rehkendus(){
int a, b, c, d, x1, x2;
cout << "Tere, ruutvõrrandi rehkendaja olen. arvud palun :)" << endl;
cout << "Sisesta arv a ";
cin >> a;
cout << "Sisesta arv b ";
cin >> b;
cout << "Sisesta arv c ";
cin >> c;
d=b*b-4*a*c;
if (d < 0){
cout << "Diskriminant on negatiivne (" << d <<") . Ruutvõrrandit ei teki.\n";
return EXIT_SUCCESS; //väljavise
}else{
cout << "Diskrminant on " << d << endl;
x1= -b+sqrt(d)/2*a;
x2= -b-sqrt(d)/2*a;
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
}
}
int main(int argc, char *argv[])
{
rehkendus();
/*int jarg, J, n;
cout << "Kas jätkata? J/n"<< endl; // rehkendaks veel???
cin >> jarg;
if(jarg == J) return rehkendus(); //jätkamine
if(jarg == n)return EXIT_SUCCESS; //väljavise
//krt, see vuristab kogu jutu ette, ükshaaval peaks..
*/
return EXIT_SUCCESS;
} |
see sai käsurea jaoks c++ ikka.
|
|
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
johnsmith
Vana Pingviin
Vanus: 50
Liitunud: 24.07.2006
Postitused: 714
Asukoht: Universum
Distributsioon: Ubuntu/Gentoo/FreeBSD
|
|
Pole küll mingi ütleja aga äkki peaks siiski proovima ilma graafilise arenduskeskonnata alguses läbi ajada. Saab korralikult selgeks kuidas need komponendid seal asetatakse ja siis võib ju pärast Kdevelopi kasutada.
Ma hakkasin ka vahepeal qt -d õppima aga asi jäi kuidagi katki vist ajapuuduse taha (vabanduse leiab alati). Samas oskan panna kokku graafilisi progesid javaga ja seda on parem õppida tavalise tekstiredaktoriga (jälle subjektiivne arvamus).
Qt ja java graafika progemise vahel on teatud sarnasus ei tea kes kelle pealt järele teinud on
Lihtsalt mõte mida ei pea mingil juhul keegi tõsiselt võtma.
|
|
|
|
_________________ "Thinking is the hardest work there is, which is probably the reason why so few engage in it" - Henry Ford
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
tore kui asi tööle hakkab nagu soovitud. puudu on vaid sisestatava info kontroll, et kas on arv või ei ole arv
Kood: | #ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <iostream>
#include <cstdlib>
#include <math.h>
using namespace std;
char jarg = 0;
int end() //funksioon, mis välja viskab
{
return EXIT_SUCCESS;
}//väljavikaja lõpp
int rehkendus(){
int a, b, c, d, x1, x2;
cout << "Sisesta arv a ";
cin >> a;
cout << "Sisesta arv b ";
cin >> b;
cout << "Sisesta arv c ";
cin >> c;
d=b*b-4*a*c;
if (d < 0){
cout << "Diskriminant on negatiivne (" << d <<") . Ruutvõrrandit ei teki.\n";
}else{
cout << "Diskrminant on " << d << endl;
x1= (-b+sqrt(d))/(2*a);
x2= (-b-sqrt(d))/(2*a);
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
} //if else lõpp
cout << "Kas jätkata? j/e"<< endl; // rehkendaks veel???
cin >> jarg;
switch(jarg){
case 'j':
rehkendus(); //rehkendame veel
break;
case 'e':
end(); //ei rehkenda veel
break;
} //lüliti lõpp
}//rehkendus lõpp
int main(int argc, char *argv[])
{
cout << "Tere, ruutvõrrandi rehkendaja olen. arvud palun :)" << endl;
rehkendus(); //rehkenduse väljakutse
}//main lõpp
|
|
|
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
KristjanS
Vana Pingviin
Vanus: 36
Liitunud: 29.12.2006
Postitused: 419
Distributsioon: Debian
|
|
KAs keegi teist ühele programmile lisavõimaluse viitsiks meisterdada? Peaks imelihtne olema, aga ma ei jaga antud programmeerimiskeelest essugi.
Programm ise asub siin:
http://muquit.com/muquit/software/grabc/grabc.html
Mis see teeb? Käivitad programmi, see muudab ikooni ja kui klõpsu teed, siis programm tuvastab selle koha koordinaadid ja värvi.
Mis mul vaja? 1) Võimalust määrata käsitsi piksli koordinaadid, ilma hiireklõpsuta, nii et see annab siis selle piksli värvi 2) Võimalust saada ainult koordinaadid või värvi
Programm ise on ~300 rida, kui ainult natukene oskaks, siis teeks ise ära. Vaja ühe makro jaoks.
|
|
|
|
_________________ Ubuntu Brainstorm: Have a device manager
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
|
|
|
|
wk
Vana Pingviin
Liitunud: 24.10.2007
Postitused: 1133
Asukoht: Tallinn, vahel Vastseliina vald
Distributsioon: Debian, Kubuntu
|
|
KristjanS kirjutas: | Mis see teeb? Käivitad programmi, see muudab ikooni ja kui klõpsu teed, siis programm tuvastab selle koha koordinaadid ja värvi. | Kuna ma C-d ise ei valda siis täpsustaks ainult, et praeguses seisus tagastab see programmike ainult RGB-väärtuse, seda 16- ja 10-süsteemis. Kuna üks läheb STDERRi ja teine STDOUTi, siis saab valida, kumba skriptis mugavam kasutada on.
|
|
|
|
_________________ Kõike hääd,
WK
|
|
|
|
bobc
Pingviini aktivist
Vanus: 43
Liitunud: 09.07.2005
Postitused: 165
Asukoht: undef
Distributsioon: SouRCe64 GNU/Linux
|
|
Pakuks omaltpoolt välja väikese rakenduse kuidas lugeda pixli värvi etteantud kordinaadilt. sgc_out.tar.bz2
Sai natuke xlib programmeerimis manuali loetud (pole eriline C progeja).
Kood: |
make sgc
sgc 100 100
sgc 100 100 -hex
|
Toimis xorg-server 1.5.1 ja xorg-server 1.6.1 peal, ei oska kommenteerida kuidas toimib/ei toimi kui desktop efektid on kasutusel (compositing window manager).
|
|
|
|
_________________
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
uus küsimus siia,
nimelt vajaks juhendamist, kuidas panna rakendus kontrollima parajasti sisseloginud kasutaja gruppi.
kui kasutaja on grupis SEE siis rakendus lubab teha SEDA ja kui kasutaja on grupis TOO siis lubab teha TODA
kui ollakse mõlemates kruppides siis lubatakse mõlemaid operatsioone teha.
|
|
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
-ordi-
Vana Pingviin
Vanus: 32
Liitunud: 13.12.2008
Postitused: 821
Distributsioon: GNU/Linux
|
|
olavsu1 kirjutas: | uus küsimus siia,
nimelt vajaks juhendamist, kuidas panna rakendus kontrollima parajasti sisseloginud kasutaja gruppi.
kui kasutaja on grupis SEE siis rakendus lubab teha SEDA ja kui kasutaja on grupis TOO siis lubab teha TODA
kui ollakse mõlemates kruppides siis lubatakse mõlemaid operatsioone teha. |
Mul ei ole praegust võimalus proovida aga umbes nii saad id kätte.
Kood: | #include <stdio.h>
#include <sys/types.h>
#include <unistd.h> |
Kood: | ..................................
int current_uid = getuid();
printf(”My UID is: %d. My GID is: %d\n”, current_uid, getgid());
system(”/usr/bin/id”);
............................... |
Pärast saad kasutada juba seda http://www.cprogramming.com/tutorial/lesson5.html
|
|
|
|
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
töötas, jutumärgid olid valed.
|
|
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
andreas
Pingviini aktivist
Vanus: 30
Liitunud: 26.02.2008
Postitused: 112
Asukoht: Raasiku
Distributsioon: Mageia Cauldron
|
|
http://www.opengroup.org/onlinepubs/007908775/xsh/getgroups.html
Kood: | #include <unistd.h>
#define GRUPPE 50
#define SEE 1000
#define SEDA 1
#define TOO 1001
#define TODA 2
gid_t grupid[GRUPPE];
int teha;
getgroups(GRUPPE, grupid);
for(int i=0; i < GRUPPE; i++)
{
if(grupid[i] == SEE)
teha = SEDA;
else if (grupid[i] == TOO)
teha = TODA;
}
if (teha == SEDA)
{
// Tee SEDA
}
if (teha == TODA)
{
// Tee TODA
} |
Hoiatus: Koodi ei ole testitud. Kasutada ülima ettevaatlikusega.
|
|
|
|
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
andreas kirjutas: | http://www.opengroup.org/onlinepubs/007908775/xsh/getgroups.html
Kood: | #include <unistd.h>
#define GRUPPE 50
#define SEE 1000
#define SEDA 1
#define TOO 1001
#define TODA 2
gid_t grupid[GRUPPE];
int teha;
getgroups(GRUPPE, grupid);
for(int i=0; i < GRUPPE; i++)
{
if(grupid[i] == SEE)
teha = SEDA;
else if (grupid[i] == TOO)
teha = TODA;
}
if (teha == SEDA)
{
// Tee SEDA
}
if (teha == TODA)
{
// Tee TODA
} |
Hoiatus: Koodi ei ole testitud. Kasutada ülima ettevaatlikusega. |
tänud, töötas tõesti poolikult. ei tehtud mõlemat operatsiooni kui kasutaja kuulus mõlemasse gruppi.
täiendus:
Kood: | #include <unistd.h>
#define GRUPPE 50
#define SEE 1001
#define SEDA 1
#define TOO 1002
#define TODA 2
gid_t grupid[GRUPPE];
int teha, toda;
getgroups(GRUPPE, grupid);
for(int i=0; i < GRUPPE; i++)
{
if(grupid[i] == SEE){
teha = SEDA;
}
if (grupid[i] == TOO){
toda = TODA;
}
}
if (teha == SEDA)
{
cout << "Test 1" << endl; // Tee SEDA
//system("/usr/bin/id");
}
if (toda == TODA)
{
cout << "Test 2" << endl;// Tee TODA
//system("/usr/bin/id");
}
if (teha != SEDA && toda != TODA){
cout << "Ei ole õigusi!" << endl;
//system("/usr/bin/id");
}
} |
|
|
|
|
|
|
|
|
-ordi-
Vana Pingviin
Vanus: 32
Liitunud: 13.12.2008
Postitused: 821
Distributsioon: GNU/Linux
|
|
olavsu1 kirjutas: | andreas kirjutas: | http://www.opengroup.org/onlinepubs/007908775/xsh/getgroups.html
Kood: | #include <unistd.h>
#define GRUPPE 50
#define SEE 1000
#define SEDA 1
#define TOO 1001
#define TODA 2
gid_t grupid[GRUPPE];
int teha;
getgroups(GRUPPE, grupid);
for(int i=0; i < GRUPPE; i++)
{
if(grupid[i] == SEE)
teha = SEDA;
else if (grupid[i] == TOO)
teha = TODA;
}
if (teha == SEDA)
{
// Tee SEDA
}
if (teha == TODA)
{
// Tee TODA
} |
Hoiatus: Koodi ei ole testitud. Kasutada ülima ettevaatlikusega. |
tänud, töötas tõesti poolikult. ei tehtud mõlemat operatsiooni kui kasutaja kuulus mõlemasse gruppi.
täiendus:
Kood: | #include <unistd.h>
#define GRUPPE 50
#define SEE 1001
#define SEDA 1
#define TOO 1002
#define TODA 2
gid_t grupid[GRUPPE];
int teha, toda;
getgroups(GRUPPE, grupid);
for(int i=0; i < GRUPPE; i++)
{
if(grupid[i] == SEE){
teha = SEDA;
}
if (grupid[i] == TOO){
toda = TODA;
}
}
if (teha == SEDA)
{
cout << "Test 1" << endl; // Tee SEDA
//system("/usr/bin/id");
}
if (toda == TODA)
{
cout << "Test 2" << endl;// Tee TODA
//system("/usr/bin/id");
}
if (teha != SEDA && toda != TODA){
cout << "Ei ole õigusi!" << endl;
//system("/usr/bin/id");
}
} | |
A'la sellist väga õudsat koodi ei ole mõtet kirjutada (#define 1 0).
|
|
|
|
|
|
|
|
olavsu1
Vana Pingviin
Vanus: 49
Liitunud: 01.12.2006
Postitused: 923
Distributsioon: ubuntu, mandriva
|
|
_________________ olen Troll ja ootan pingviin.org konto sulgemist.
|
|
|
|
-ordi-
Vana Pingviin
Vanus: 32
Liitunud: 13.12.2008
Postitused: 821
Distributsioon: GNU/Linux
|
|
olavsu1 kirjutas: | milles seisneb õudus? |
Ma ei näe erilist põhjust kirjutada nii:
#define A 50
See selline mõtetu virin minu poolt ...
|
|
|
|
|
|
|
|
andreas
Pingviini aktivist
Vanus: 30
Liitunud: 26.02.2008
Postitused: 112
Asukoht: Raasiku
Distributsioon: Mageia Cauldron
|
|
|
|
|