Programiranje u C-u - od svega pomalo izdvojena tema

poruka: 1.661
|
čitano: 386.977
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
11 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

Imam jos jedno pitanje. Znam da nikad ne mozemo znati programski jezik do kraja ali koja je krajnja tocka u učenju same sintakse c-a. To pitam jer bih se kao početnik nakon sto svladam c htio baciti na c++ ili c#

PeMaCN
Moj PC  
0 0 hvala 0
13 godina
offline
Re: Programiranje u C-u - od svega pomalo
Floki kaže...
...

 E pa Tracer mu jest dao najbolji mogući savjet. Ili C++ sa C++ Builder ili C# sa VS.

Bolje od toga ne može.

Što nedostaje GTK+-u, ako baš gorljivo želi raditi GUI u C-u?

0100011001000001010100000010000000110100001000000100110001001001010001100100010100100001
13 godina
offline
Re: Programiranje u C-u - od svega pomalo
PeMaCN kaže...

Imam jos jedno pitanje. Znam da nikad ne mozemo znati programski jezik do kraja ali koja je krajnja tocka u učenju same sintakse c-a. To pitam jer bih se kao početnik nakon sto svladam c htio baciti na c++ ili c#

Brzo ćeš primijetiti da je C trivijalan jezik u odnosu na C# ili Javu, a pogotovo u odnosu na C++.

C-ova sintaksa zaista nije neki problem.

0100011001000001010100000010000000110100001000000100110001001001010001100100010100100001
17 godina
offline
Re: Programiranje u C-u - od svega pomalo
pr0n_addict kaže...
PeMaCN kaže...

Imam jos jedno pitanje. Znam da nikad ne mozemo znati programski jezik do kraja ali koja je krajnja tocka u učenju same sintakse c-a. To pitam jer bih se kao početnik nakon sto svladam c htio baciti na c++ ili c#

Brzo ćeš primijetiti da je C trivijalan jezik u odnosu na C# ili Javu, a pogotovo u odnosu na C++.

C-ova sintaksa zaista nije neki problem.

 Kakav trivijalan jezik, nema trivijalnog jezika, programirati i znati sintaksu jezika nije ista stvar, sintaksu jezika može naučiti svatko, programirati je nešto čisto drugo, umjesto da mu ukažeš na tu stvar pričaš bez veze, i držiš ga u krivom početničkom uvjerfenju da je znati programirati znati sintaksu jezika.

U čemu je to teži C++ od C, valjda zato što u C moraš pisati sam ono što imaš gotovo u C++ bibliotekama, pa ne moraš ni znati kako to napisati. Uostalom C++ je nastao od C, ne da programerima oteža, nego olakša život i ima dosta literature koja u izučavanju C++ obrađuje C kroz c biblioteke u C++. Ne razumijem tu famu o teškoći C++.

Što se mene tiče može uzeti što hoće, pa i C za GUI i GTK+, to si možda ti radio ili radiš, ja mu kažem što sam ja radio. U C sam radio algoritme i konzolne aplikacije, kad sam stigao do GUI išao sam na objektnu paradigmu. Ok, ako misli ostati bez objektne paradigme a raditi GUI, neka tebe sluša.

Poruka je uređivana zadnji put pon 29.6.2015 20:19 (Floki).
14 godina
offline
Programiranje u C-u - od svega pomalo

Vidim da je tema dosta aktivna, ima li netko sad vremena za rjesit zadatak iz srednje sk, dosta je hitno, u PP  molim.

Hvala!

Moj PC  
0 0 hvala 0
11 godina
offline
Re: Programiranje u C-u - od svega pomalo
pr0n_addict kaže...
Floki kaže...
...

 E pa Tracer mu jest dao najbolji mogući savjet. Ili C++ sa C++ Builder ili C# sa VS.

Bolje od toga ne može.

Što nedostaje GTK+-u, ako baš gorljivo želi raditi GUI u C-u?

GTK+ nije za preporuciti ni najgorem neprijatelju. Osim sto vec stoljecima nije thread safe (a i taj thread awareness mu je, da prostis, za qurac jer zahtijeva puno tlake i muke), dokumentacija i standardizacija mu takodjer nisu jaca strana.

 

Ako vec forsira C, a treba mu samo jedna platforma (Windows), onda mu je WinAPI najbolji izbor.

TracerCPP kaže...
bbanelli kaže...
TracerCPP kaže...

C nije baš za GUI.

Osim sto je cijeli Win API baziran na C-u.

U C-u su napravljeni kompletni operacijski sustavi, no to zato ne znači da je on dobar izbor za GUI. C++/C# je tu puno bolji izbor.

 Ha cuj, o ukusima se ne raspravlja; no dobro, za nekoga tko pocinje, u principu si u pravu. Cinjenica je da u WinAPI-ju mozes napisati GUI koji ce uz malo paznje raditi na svemu od NT4 do Win10. Pa tko voli...

 

http://www.pohrani.com/f/1y/b1/2S9BtB2P/windows-nt-40-2015-04-15.png

http://www.pohrani.com/f/2c/ml/35Ocm7eK/windows-10.png

http://www.pci-z.com/
13 godina
offline
Re: Programiranje u C-u - od svega pomalo
Floki kaže...
...

 Kakav trivijalan jezik, nema trivijalnog jezika, programirati i znati sintaksu jezika nije ista stvar, sintaksu jezika može naučiti svatko, programirati je nešto čisto drugo, umjesto da mu ukažeš na tu stvar pričaš bez veze, i držiš ga u krivom početničkom uvjerfenju da je znati programirati znati sintaksu jezika. U čemu je to teži C++ od C, valjda zato što u C moraš pisati sam ono što imaš gotovo u C++ bibliotekama, pa ne moraš ni znati kako to napisati. Što se mene tiče može uzeti što hoće, pa i C za GUI i GTK+, to si možda ti radio ili radiš, ja mu kažem što sam ja radio. U C sam radio algoritme i konzolne aplikacije, kad sam stigao do GUI išao sam na objektnu paradigmu. Ok, ako misli ostati bez objektne paradigme a raditi GUI, neka tebe sluša.

Mislio sam na to da je lakše pohvatati sintaksu C-a od C++-a. Čovjek je pitao za sintaksu, ne? Upravo sam se na to nadovezao.

Valjda ćemo se složiti da je C po pitanju same sintakse manje kompleksan jezik od C++-a?

 

Preduvjet za dobro savladavanje sintakse C++-a je, po meni, barem konceptualno poznavanje objektno orijentirane paradigme koja je bitno drukčija od proceduralne.

S tim znanjem je puno lakše "u hodu" savladati sintaksu. Može se i C++ pisati proceduralno, ali zašto bi se netko u to upustio ako jezik nudi sve mogućnosti OOP-a?

 

Pisanje kvalitetnih algoritama, dobro modeliranje procesa, strukture koda i slično je daleko bitnije od sintakse korištenog jezika - neovisno o tome radi li se o proceduralnom ili objektno orijentiranom programiranju.

Nisam nigdje rekao da savladavanje sintakse jezika ujedno znači i sposobnost pisanja dobrog programskog koda - čak niti između redaka.

 

Nikada nisam koristio GTK+ (Qt sam koristio), ali je jako popularan i rasprostranjen te nativno podržava upravo C no postoje i bindinzi za razne druge jezike. Baš me sada zaintrigiralo, moram priznati.

EDIT: Kolega iznad s očito više iskustva kaže da se ipak ne radi o kvalitetnom softveru, oh well... Svejedno, radije bih išao na nekakav cross-platform library nego na WinAPI. Problem je što ih nema baš nešto puno koji podržavaju C.

 

Slažem se s tobom, svakako bi se valjalo potruditi i dobro savladati OOP no C svejedno ne ide nigdje, to je sigurno. Itekako ima svoju nišu.

 

0100011001000001010100000010000000110100001000000100110001001001010001100100010100100001
Poruka je uređivana zadnji put pon 29.6.2015 20:33 (pr0n_addict).
14 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo
pr0n_addict kaže...

Mislio sam na to da je lakše pohvatati sintaksu C-a od C++-a. Čovjek je pitao za sintaksu, ne? Upravo sam se na to nadovezao.

Valjda ćemo se složiti da je C po pitanju same sintakse manje kompleksan jezik od C++-a?

Sintaksa je ono što se najmanje treba gledati. Ono što je zapravo bitno je pristup tj. u ovom slučaju objektni vs. proceduralni, te je jasno da je objektni pristup bolji. Štoviše, C++ dopušta i jedan i drugi pristup jer je C++ tek proširenje C-a ("C sa klasama"). Upravo zbog toga u C-u niti ne postoji toliko izbora za rad s GUI-jem kao u npr. C++, gdje za to možeš izabrati hrpe raznih biblioteka (MFC, VCL, Qt, WxWidgets...), a i C# tu dolazi sa svojom .NET bibliotekom. Sve te biblioteke su baš specijalizirane za GUI, a opet nude i low level podršku kroz sam jezik. Tako da, kad je riječ o GUI-u tu C se teško može natjecati s ovima..

 

No tko je mazohista, neka izvoli

11 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

Ljudi hvala vam na tolikim odgovorima i trudu da mi pomognete. Inace proteklih godinu dana radim u c-u ( to se više može nazvati učenjem nego radom ) pa sada kad završim s obrađivanjem jedne knjige namjeravam prijeći na c++ jer ocito je da c baš i nije namijenjen za malo konkretnije stvari. 

PeMaCN
Moj PC  
0 0 hvala 0
11 godina
offline
Re: Programiranje u C-u - od svega pomalo
TracerCPP kaže...

Tako da, kad je riječ o GUI-u tu C se teško može natjecati s ovima..

 

No tko je mazohista, neka izvoli

 Nije stvar u natjecanju, nego cisto u tome sto zelis, mozes i znas. Na kraju krajeva, GUI mozes zvati i direktno preko ASM-a (primjer za FASM). Ovo sam planirao napisati ispod teksta "koda", ali recimo, Bugov forum je konkretan primjer kako neovisno o tehnologiji u kojoj radis, mozes napraviti tesko, nefunkcionalno i neucinkovito smece.

 

format PE GUI
entry start

section '.text' code readable executable

start:

push 0
push _caption
push _message
push 0
call [MessageBoxA]

push 0
call [ExitProcess]

section '.data' data readable writeable

_caption db 'Win32 assembly program',0
_message db 'Hello World!',0

section '.idata' import data readable writeable

dd 0,0,0,RVA kernel_name,RVA kernel_table
dd 0,0,0,RVA user_name,RVA user_table
dd 0,0,0,0,0

kernel_table:
ExitProcess dd RVA _ExitProcess
dd 0
user_table:
MessageBoxA dd RVA _MessageBoxA
dd 0

kernel_name db 'KERNEL32.DLL',0
user_name db 'USER32.DLL',0

_ExitProcess dw 0
db 'ExitProcess',0
_MessageBoxA dw 0
db 'MessageBoxA',0

section '.reloc' fixups data readable discardable

http://www.pci-z.com/
16 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo
bbanelli kaže...
TracerCPP kaže...

Tako da, kad je riječ o GUI-u tu C se teško može natjecati s ovima..

 

No tko je mazohista, neka izvoli

 Nije stvar u natjecanju, nego cisto u tome sto zelis, mozes i znas. Na kraju krajeva, GUI mozes zvati i direktno preko ASM-a (primjer za FASM). Ovo sam planirao napisati ispod teksta "koda", ali recimo, Bugov forum je konkretan primjer kako neovisno o tehnologiji u kojoj radis, mozes napraviti tesko, nefunkcionalno i neucinkovito smece.

 

format PE GUI
entry start

section '.text' code readable executable

start:

push 0
push _caption
push _message
push 0
call [MessageBoxA]

push 0
call [ExitProcess]

section '.data' data readable writeable

_caption db 'Win32 assembly program',0
_message db 'Hello World!',0

section '.idata' import data readable writeable

dd 0,0,0,RVA kernel_name,RVA kernel_table
dd 0,0,0,RVA user_name,RVA user_table
dd 0,0,0,0,0

kernel_table:
ExitProcess dd RVA _ExitProcess
dd 0
user_table:
MessageBoxA dd RVA _MessageBoxA
dd 0

kernel_name db 'KERNEL32.DLL',0
user_name db 'USER32.DLL',0

_ExitProcess dw 0
db 'ExitProcess',0
_MessageBoxA dw 0
db 'MessageBoxA',0

section '.reloc' fixups data readable discardable

 

Ako nije problem , zamolio bih te da kompajliraš code pa binary uploadaš na jedan od predloženih hostova sa linka http://www.bug.hr/forum/topic/programiranje/dijeljenje-svojih-uradaka-drugima/65886.aspx.

 

 

 

moje aplikacije na play-u : https://play.google.com/store/search?q=nik02droid
11 godina
offline
Re: Programiranje u C-u - od svega pomalo
nik_02 kaže...

Ako nije problem , zamolio bih te da kompajliraš code pa binary uploadaš na jedan od predloženih hostova sa linka http://www.bug.hr/forum/topic/programiranje/dijeljenje-svojih-uradaka-drugima/65886.aspx.

 http://flatassembler.net/download.php

 

Imas unutra primjera, ukljucujuci i ovaj (to je bas kompletni PE). Binary je velik tipa par kilobajta, da sad ne kopam... :)

http://www.pci-z.com/
10 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

Pozdrav,

imam mali problem sa zadatkom. program treba rijsit pomocu datoteka. Uglavnom trazi se da iz glavnog pozivam funkciju u kojoj se iz .txt datoteke citaju brojevi koji predstavljaju otpornike i treba na temelju tih brojeva izracunat njihovu paralelu (znaci umnozak otpornika/zbroj otpornika) i onda to rjesenje spremit u drugu .txt datoteku. Ponavljam si za ispit pa mi je ovo dosta vazno ako itko zna bio bih jako zahvalan. Rijesio sam vecinu zadatka al mi ne radi. Mislim da je problem u tome sto stringove krivo pretvaram u integere, ali jednostavno ne mogu nigdje nac kako treba.

 

#include <cstdlib>
#include <iostream>
#include<conio.h>
using namespace std;

int prva(){
FILE *p;

p=fopen("otpori.txt","r");
if(p==NULL){
printf("Nemogu otvorit");
getch();
exit(1);
}

FILE *f;

p=fopen("rezultat.txt","w");
if(p==NULL){
printf("Nemogu otvorit");
getch();
exit(1);
}


char otp[200];
int umnozak=1,zbroj=0,i;
float rjesenje;
while(fscanf(p,"%s",otp)==1){
i=(int)otp;
umnozak=umnozak*i;
zbroj=zbroj*i;
rjesenje=(float)umnozak/zbroj;
}
fprintf(f,"%f",rjesenje);

fclose(p);
fclose(f);
}

int main(int argc, char *argv[])
{
int paralela=0;
paralela=prva();
system("PAUSE");
return EXIT_SUCCESS;
}

Poruka je uređivana zadnji put sub 4.7.2015 21:34 (josip.1s).
 
0 0 hvala 0
11 godina
offline
Re: Programiranje u C-u - od svega pomalo

@josip.1s

 

Imas hrpu problema, na brzinu, nadam se da nisam nesto fulao...

 

i) koliko sam shvatio, ovo je nekakav "C" thread. Zasto onda koristios cstdlib (sto implicira potrebnu za namespaceovima) umjesto stdlib.h. Isto pitanje i za iostream. A koristis C funkcije.

ii) conio.h je umro negdje kada i Borlandov C compiler za DOS, dakle, DAVNO. i ostale abominacije iz njega ti stvarno nisu potrebne, koristi debugger.

iii) kada smo kod debuggera, jesi li ti uopce pokrenuo svoj kod; na prvu imas par mega-gresaka, ali si ih lako mogao sam ispraviti

iv) p=fopen("rezultat.txt","w"); treba pisati f=. Uz to, fopen je ruzan i nesiguran, ali ne znam koliko ti je sada to bitno.

v) (int)otp nece pretvoriti character u integer. Koristi atoi() ili atof() ako ti vrijednosti otpora nece biti integeri odnosno ako ne misliss raditi cast dijeljenja. Ili stavi 1.0 kada dijelis.

vi) koliko mene Rudjer sjeca (bilo je davno, doduse), formula ti je malo kriva. 1/(zbroj reciprocnih) je ono sto ti (valjda?) treba; ovo sto si ti napisao je specijalan slucaj samo za dva otpora (mozes lako to dobiti algebarski). No koliko vidim, ti si pretpostavio 200 komada...

vii) funkcija prva() ima povratni tip int, a ti ne vracas nista? Pokusaj takodjer uzeti u naviku eksplicitno navodjenje voida. Nikada ne znas kad ces portati kod na stariji kompajler koji ce misliti da pricas o nepoznatom broju parametara, a ne o tome da parametra funkcije nema.

vii) sto ce ti argumenti main funkcije kada ih ne koristis? Koristi void.

 

http://pastebin.com/a7mNdBks (postoji li uopce mogucnost embeddanja PasteBina na ovu ispriku od foruma?)

http://www.pci-z.com/
Poruka je uređivana zadnji put ned 5.7.2015 4:22 (bbanelli).
17 godina
offline
Programiranje u C-u - od svega pomalo

Što će if else grananje u funkciji kad se ona prekida sa return.

 

 

#include <stdio.h>
#include <stdlib.h>

void paralela() {
   FILE *p, *f;
   char otp[200];
   int i;
   float rjesenje, zbroj = 0;
   if(fopen_s(&p, "otpori.txt", "r") || fopen_s(&f, "rezultat.txt", "w"))
   {
      printf("Greska\n");
      return;
   }
   while (fgets(otp, sizeof(otp), p))
   {
      sscanf_s(otp, "%d", &i);
      zbroj += 1.0 / i;
   }
   rjesenje = 1 / zbroj;
   fprintf(f, "%f", rjesenje);
   fclose(p);
   fclose(f);
}

int main()
{
   paralela();
   return 0;
}

Poruka je uređivana zadnji put ned 5.7.2015 14:46 (Floki).
 
0 0 hvala 0
10 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo
bbanelli kaže...

@josip.1s

 

Imas hrpu problema, na brzinu, nadam se da nisam nesto fulao...

 

i) koliko sam shvatio, ovo je nekakav "C" thread. Zasto onda koristios cstdlib (sto implicira potrebnu za namespaceovima) umjesto stdlib.h. Isto pitanje i za iostream. A koristis C funkcije.

ii) conio.h je umro negdje kada i Borlandov C compiler za DOS, dakle, DAVNO. i ostale abominacije iz njega ti stvarno nisu potrebne, koristi debugger.

iii) kada smo kod debuggera, jesi li ti uopce pokrenuo svoj kod; na prvu imas par mega-gresaka, ali si ih lako mogao sam ispraviti

iv) p=fopen("rezultat.txt","w"); treba pisati f=. Uz to, fopen je ruzan i nesiguran, ali ne znam koliko ti je sada to bitno.

v) (int)otp nece pretvoriti character u integer. Koristi atoi() ili atof() ako ti vrijednosti otpora nece biti integeri odnosno ako ne misliss raditi cast dijeljenja. Ili stavi 1.0 kada dijelis.

vi) koliko mene Rudjer sjeca (bilo je davno, doduse), formula ti je malo kriva. 1/(zbroj reciprocnih) je ono sto ti (valjda?) treba; ovo sto si ti napisao je specijalan slucaj samo za dva otpora (mozes lako to dobiti algebarski). No koliko vidim, ti si pretpostavio 200 komada...

vii) funkcija prva() ima povratni tip int, a ti ne vracas nista? Pokusaj takodjer uzeti u naviku eksplicitno navodjenje voida. Nikada ne znas kad ces portati kod na stariji kompajler koji ce misliti da pricas o nepoznatom broju parametara, a ne o tome da parametra funkcije nema.

vii) sto ce ti argumenti main funkcije kada ih ne koristis? Koristi void.

 

http://pastebin.com/a7mNdBks (postoji li uopce mogucnost embeddanja PasteBina na ovu ispriku od foruma?)

 

ovaj primjer sto si stavio radi, samo sto ne ide tako racunanje parelele al sam uspio ispravit. Uglavnom nisam znao to za conio.h, jer na kolegiju nam nisu to rekli, cak nismo ni koristili atoi() sto ocito kod datoteka je dosta potrebno. Uglavnom hvala na pomoci sad sam shvatio kako ide :)

hvala i @Floki-u

17 godina
offline
Programiranje u C-u - od svega pomalo

Jesi za sscanf čuo, char niz pretvoriš u integer u ovom primjeru, a sa fgets dohvatiš liniju u char niz, gore u jednom if provjeriš datoteke.

Poruka je uređivana zadnji put ned 5.7.2015 17:22 (Floki).
 
0 0 hvala 0
10 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo
Floki kaže...

Jesi za sscanf čuo, char niz pretvoriš u integer u ovom primjeru, a sa fgets dohvatiš liniju u char niz, gore u jednom if provjeriš datoteke.

 

za gets jesam, nju smo koristili kada smo unosili znakove u neku varijablu a prekid unosa je enter koliko sam zapamtio. Mi smo radili sa fscanf dohvacanje jednoga chara s tim mi je nekako lakse.

sto se tice sscanf, nisam cuo za to, znaci on zapravo radi kao atoi() jelda?

17 godina
offline
Re: Programiranje u C-u - od svega pomalo
josip.1s kaže...
Floki kaže...

Jesi za sscanf čuo, char niz pretvoriš u integer u ovom primjeru, a sa fgets dohvatiš liniju u char niz, gore u jednom if provjeriš datoteke.

 

za gets jesam, nju smo koristili kada smo unosili znakove u neku varijablu a prekid unosa je enter koliko sam zapamtio. Mi smo radili sa fscanf dohvacanje jednoga chara s tim mi je nekako lakse.

sto se tice sscanf, nisam cuo za to, znaci on zapravo radi kao atoi() jelda?

 
sscanf_s(otp, "%d", &i)

 

Dakle, prvi argument je char niz, drugi format u koji prvi argument pretvaraš, a treći argument je adresa varijable u koju stavljaš pretvoreni prvi argument.

Poruka je uređivana zadnji put ned 5.7.2015 17:34 (Floki).
10 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo
Floki kaže...
josip.1s kaže...
Floki kaže...

Jesi za sscanf čuo, char niz pretvoriš u integer u ovom primjeru, a sa fgets dohvatiš liniju u char niz, gore u jednom if provjeriš datoteke.

 

za gets jesam, nju smo koristili kada smo unosili znakove u neku varijablu a prekid unosa je enter koliko sam zapamtio. Mi smo radili sa fscanf dohvacanje jednoga chara s tim mi je nekako lakse.

sto se tice sscanf, nisam cuo za to, znaci on zapravo radi kao atoi() jelda?

 
      sscanf_s(otp, "%d", &i);

 

Dakle, prvi argument je char niz, drugi format u koji prvi argument pretvaraš, a treći argument je adresa varijable u koju stavljaš pretvoreni prvi argument.

 Probat cu i s tim.

Hvala :)

17 godina
offline
Programiranje u C-u - od svega pomalo

fgets(otp, sizeof(otp), p)

 

 

Prvi argument je char niz, odnosno pokazivač na njega,  u koji smještaš liniju iz datoteke, drugi veličina tog niza a treći stream koji si otvorio.

Kad fgets vrati 0 više nema liniji u datoteci, zato je zgodan za while petlju koja se vrti liniju po liniju.

 

 

U dadoteku spremaš po linijama

 

5

25

89

 

tim redom fgets čita i sprema liniju po liniju u char niz, na kraju datoteke se zaustavi.

 

 

Neka te ne buni oblik funkcije sscanf_s, ja koristim VS i on mi ne dopušta običnu funkciju sscanf, za sve funkcije sa s završetkom postoji inačica bez s.

Poruka je uređivana zadnji put ned 5.7.2015 17:54 (Floki).
 
0 0 hvala 0
11 godina
offline
Re: Programiranje u C-u - od svega pomalo
Floki kaže...

Neka te ne buni oblik funkcije sscanf_s, ja koristim VS i on mi ne dopušta običnu funkciju sscanf, za sve funkcije sa s završetkom postoji inačica bez s.

 #define _CRT_SECURE_NO_WARNINGS


Da, moglo se elegantnije rijesiti jednom evaluacijom bez else.
 
Inace, @OP, ne znam koju si ti formuli koristio za racunanje paralelnog spoja otpornika, no ona koju si napisao nije tocna za vise od dva otpora.
 
https://en.wikipedia.org/wiki/Series_and_parallel_circuits#Resistors_2

http://www.pci-z.com/
17 godina
protjeran
offline
Programiranje u C-u - od svega pomalo

Pozdrav ljudi :)

 

Ne znam je li ovo najprikladnije mjesto, no pošto se radi o C-u pitat ću ovdje. Zanima me može li itko

preporučiti ikakvu literaturu za strukture podataka tipa vezane liste, binarna stabla i slično. Poželjno bi bilo

da su u C-u, ali može i općenito.

Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
 
0 0 hvala 1
11 godina
offline
Re: Programiranje u C-u - od svega pomalo

 @OP, mozda ti pomogne ova skripta koja se (koliko vidis) davno koristila na PMF-u, ali predpostavljam da ju knjiga manje vise prati.

http://www.pci-z.com/
17 godina
protjeran
offline
Re: Programiranje u C-u - od svega pomalo
bbanelli kaže...

 @OP, mozda ti pomogne ova skripta koja se (koliko vidis) davno koristila na PMF-u, ali predpostavljam da ju knjiga manje vise prati.

 Hvala obojici, upravo mi je ovakvo nešto potrebno.

17 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

Početnik sam u programiranju a ovaj problem je vjerovatno trivijal ali ga nikako ne mogu shvatiti.

Kada preko scanf funkcije unesem recimo broj 2313 printf će umjesto 23.13 ispisati 23.129999.

S druge strane ako broj/100 stavimo izravno kao argument u printf dobijemo 23.13.

Od kuda ta razlika?

 

# include <stdio.h>
int main(){
float broj;
scanf("%f", &broj);
broj=broj/100;
printf("%f", broj);
return 0;
}

 
0 0 hvala 0
13 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

Probaj u printf-u staviti %.2f ; to znači da će zaokružiti na dvije decimale a to će onda biti 23.13, inače float tip podataka ti nije previše precizan, preciznost mu je na sedmoj decimali, dok double radi do na 14 decimala...
Float ti ne daje preciznu vrijednost nakon 7 decimale, on vrsi aproksimaciju (pribliznu vrijednost stvarne vrijednosti). Recimo u Javi imas tip podatka BigDecimal tip podataka koji ima jako jako veliku preciznost(ali nemoj se prevec zamarati). Korisiti te fore %.nf (n= 1 - 7), ako želiš da ti zaokruzi vrijednost na određeni broj decimalnih mjesta.
 

Poruka je uređivana zadnji put pon 24.8.2015 21:12 (Master11).
Moj PC  
1 0 hvala 2
17 godina
neaktivan
offline
Re: Programiranje u C-u - od svega pomalo

OK. Hvala

9 godina
neaktivan
offline
Programiranje u C-u - od svega pomalo

pozdrav ljudi imam problem sa 2 zadatka pa ako bi mi mogli pomoc sa objasnjenjem(znam zadatke rjesiti bez "funkcija"): 

 

 

1. upisi 5 realnih brojeva sa 2 znamenke u cijelom i 2 u decimalnom djelu,upisati trazenu znamenku i u funkciji provjeri dali se trazena znamenka pojavljuje u upisanom broju(provjeri za svaki broj).

 

2.upisi recenicu i u funkciji ispisi najduzu rijec

 
0 0 hvala 0
Nova poruka
E-mail:
Lozinka:
 
vrh stranice