
C# program koji računa volumen i oplošje kugle


nigdje nisi postavio vrijednost r
Daklem
r=Convert.ToDouble(Console.ReadLine());
console.readline ti vraća string, i sa convert.todouble ga konvertiraš u double da bi ga mogao pospremiti u varijablu tipa double.

nigdje nisi postavio vrijednost r
Daklem
r=Convert.ToDouble(Console.ReadLine());
console.readline ti vraća string, i sa convert.todouble ga konvertiraš u double da bi ga mogao pospremiti u varijablu tipa double.
e to se traži! :)probat ću pa javim.

Jos mi nije jasno zasto pisete u C# a ne koristite osnove OOP-a.

Jos mi nije jasno zasto pisete u C# a ne koristite osnove OOP-a.
Ajde Tnakire, da vidimo klase i metode na djelu ;-)

Jos mi nije jasno zasto pisete u C# a ne koristite osnove OOP-a.
Ajde Tnakire, da vidimo klase i metode na djelu ;-)
Ma problem je u tome sto ljudi u startu krivo uce i na kraju dobijes spageti programera koji sebi i kolegama komplicira zivot.

Jos mi nije jasno zasto pisete u C# a ne koristite osnove OOP-a.
Ajde Tnakire, da vidimo klase i metode na djelu ;-)
Ma problem je u tome sto ljudi u startu krivo uce i na kraju dobijes spageti programera koji sebi i kolegama komplicira zivot.
Slazem se, opet me C# privlaci.


evo ovako sam riješio "slučaj" .. niije profi al hbg .. (:
hvala vam svima redom! :)
... nije profi al radi

Jos mi nije jasno zasto pisete u C# a ne koristite osnove OOP-a.
Šta si pod tim misliš?

Ne vidim kaj fali Gamecoderovu kodu. Jednostavan i uredan source je uvijek poželjan, a OOP ionak nije garancija ničega, a pogotovo ne kvalitete koda.
Uostalom, ovak jednostavan problem ić over-engineerati je smiješno, IMHO.

došao do određene faze programa u izradi programa.. dakle problem mi je učitati r/polumjer(broj) sa tipkovnice i iskoristit ga u formuli za izračun volumena i oplošja.. zasad sam napisao samo formulu za volumen. možebitno treba dodati još koji namespace, a neki su valjda i viška. tek sam danas malo ozbiljnije uzeo C# u ruke, tj. tek ga počeo učit. btw. u C++ bih znao riješit zadatak. dobro, zanima me kako uvrstit broj koji se unese "r" u formulu ? korigirajte me ako još bilošto u kodu ne štima ...
Ako već znaš sa c++-om riješiti zadatke to bi trebalo značiti i da znaš OOP bar osnove ,inače može se i parsiranje raditi u zadatku ,također bi trebao znati i naučiti koje su osnovne razlike između C#-a i C++-a jer to puno znači i govori o programeru .Slažem se sa tnakir-om jer kod mora biti čist i jasan a i da se zna što koji redak znači.Mislim da je suvišno bilo što reći jer može se samo ući u raspravu .Drago mi je da se C# uči ali nadam se da ideš na pravi pristup(temeljit).

Ne vidim kaj fali Gamecoderovu kodu. Jednostavan i uredan source je uvijek poželjan, a OOP ionak nije garancija ničega, a pogotovo ne kvalitete koda.
Uostalom, ovak jednostavan problem ić over-engineerati je smiješno, IMHO.
Istina, ali ako na banalnim primjerima ne pocme raditi kako treba nece ni dalje. U svakom slucaju si u pravu, ali ovo moje ali jos uvijek visi tu negdje :)

Evo ja baš planiram početi s C#...
Da li se tu može početi s nikakvim znanjem OOPa,jer do sad sam se samo bavio s C++-om i zasad samo naučio napisat klasu,ništa dalje nisam radio u vezi OOPa,makar iz C++a znam arraye,petlje,spremnike,funkcije,rekurzije itd.(Sve sto je trebalo za natjecanja iz programiranja).

Evo ja baš planiram početi s C#...
Da li se tu može početi s nikakvim znanjem OOPa,jer do sad sam se samo bavio s C++-om i zasad samo naučio napisat klasu,ništa dalje nisam radio u vezi OOPa,makar iz C++a znam arraye,petlje,spremnike,funkcije,rekurzije itd.(Sve sto je trebalo za natjecanja iz programiranja).
OOP nije vezan za programski jezik. Klase, objekti, metode, propertiji postoje i u C++u, i u Javi i u VB.Netu i u PHP-u i u neznam ni ja cemu.
Moze se poceti sa nikakvim znanjem iz filozofije OOP-a.

Evo ja baš planiram početi s C#...
Da li se tu može početi s nikakvim znanjem OOPa,jer do sad sam se samo bavio s C++-om i zasad samo naučio napisat klasu,ništa dalje nisam radio u vezi OOPa,makar iz C++a znam arraye,petlje,spremnike,funkcije,rekurzije itd.(Sve sto je trebalo za natjecanja iz programiranja).
OOP nije vezan za programski jezik. Klase, objekti, metode, propertiji postoje i u C++u, i u Javi i u VB.Netu i u PHP-u i u neznam ni ja cemu.
Moze se poceti sa nikakvim znanjem iz filozofije OOP-a.
Hvala
Može preporuka nekog IDE-a?

Microsoft Visual Studio Express - freeware je i relativno dobar :)

namespace Kugla
{
class Kugla
{
private double r;
public Kugla(double polumjer)
{
r = polumjer;
Oplosje = 4 * Math.Pow(r, 2) * Math.PI; // preko kostruktora instanciramo objekt kugla sa polumjerom kao argumentom
Volumen = (4 * Math.Pow(r, 3) * Math.PI)/3; // svojstva volumen i oplošje smo izračunali i postavili već u konstruktoru
} // pošto nam samo ova dva podatka trebaju, dakle instaciranjem objekta sa
// određenim polumjerom već dobijamo izračun opošja i volumena
public double Oplosje
{
get;
private set; // podatke iz klase možemo jedino pročitati preko svojstava, ona se jedino mogu
} // postaviti u ovoj klasi, a iz ostalih samo čitati
public double Volumen
{
get;
private set;
}
}
class Program
{
static void Main(string[] args)
{
double polumjer;
Console.Write("Unesi polumjer kugle u cm: ");
double.TryParse(Console.ReadLine(), out polumjer); // u klasi program jedino možemo instanirati objekt kugla
Kugla A = new Kugla(polumjer); // i očitati svojstva volumen i oplošje određenog objekta
Console.WriteLine("Kugla polumjera {0} cm: oplošje: {1:0.000} cm2, volumen: {2:0.000} cm3", polumjer, A.Oplosje, A.Volumen);
}
}
}

OOP nije vezan za programski jezik. Klase, objekti, metode, propertiji postoje i u C++u, i u Javi i u VB.Netu i u PHP-u i u neznam ni ja cemu.
Moze se poceti sa nikakvim znanjem iz filozofije OOP-a.
Zaboravio si napomenuti i C. ;)
@Floki
Ne bih htio kritizirati trud, ali mogel si to ljepše malo napisati :P. Hint: kad pišeš u kodu, koristi Shift + Enter za prelazak u novi red. :)

OOP nije vezan za programski jezik. Klase, objekti, metode, propertiji postoje i u C++u, i u Javi i u VB.Netu i u PHP-u i u neznam ni ja cemu.
Moze se poceti sa nikakvim znanjem iz filozofije OOP-a.
Zaboravio si napomenuti i C. ;)
@Floki
Ne bih htio kritizirati trud, ali mogel si to ljepše malo napisati :P. Hint: kad pišeš u kodu, koristi Shift + Enter za prelazak u novi red. :)
Reci, kako bi ti, ja sam preko svojstava

Reci, kako bi ti, ja sam preko svojstava
Joj joj, krivo si me skužil, nisam mislil na sam program, već na izgled tvog posta :P. Svaki novi red si rascjepal u novi kod tag. Htio sam ti reći, kad već pišeš, daj onda ovak:
#include <iostream>
int main()
{
//ovo je neki moj program
return 0;
}
Kužiš? :P
Samo sam na urednost mislil, ništa zlonamjerno. :)

Reci, kako bi ti, ja sam preko svojstava
Joj joj, krivo si me skužil, nisam mislil na sam program, već na izgled tvog posta :P. Svaki novi red si rascjepal u novi kod tag. Htio sam ti reći, kad već pišeš, daj onda ovak:
#include <iostream>
int main()
{
//ovo je neki moj program
return 0;
}
Kužiš? :P
Samo sam na urednost mislil, ništa zlonamjerno. :)
a ne, nisam ja za naljutiti se, uvijek volim dobru ideju, ili savjet , sve pet
ma ne znam zašto mi ovako iz Visual Studia rascijepi kod, tamo izgleda čisto OK, a onda preko Chromea ga ne mogu uopće ubaciti, a preko FF mi ima ovakav izgled

namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
// ogledni kod
// koristio shift + enter
// za prelazak u novi red
}
}
}

Ne znam kako lijepis inace, ali meni ovo pomaze (koristim firefox). Kada kopiram kôd iz deva ili notepada, u bugovom editoru prebacim se u novu liniju, stil prebacim u kôd i onda opalim ctrl+v. Fino se zalijepi tekst i bude mi ureden kako bog zapovjeda. Inace kad god bih jednostavno zalijepio kôd, te ga naknadno oznacio i stil prebacio u "kôd" dobio bih zivi uzas...

Ne znam kako lijepis inace, ali meni ovo pomaze (koristim firefox). Kada kopiram kôd iz deva ili notepada, u bugovom editoru prebacim se u novu liniju, stil prebacim u kôd i onda opalim ctrl+v. Fino se zalijepi tekst i bude mi ureden kako bog zapovjeda. Inace kad god bih jednostavno zalijepio kôd, te ga naknadno oznacio i stil prebacio u "kôd" dobio bih zivi uzas...
Pokušat ću tako.

double.TryParse(Console.ReadLine(), out polumjer)
Ovdje ima jedna zamka za sve nas naučene na C/C++
Mi smo naučili na konzoli unositi decimalne brojeve sa točkom koja razdvaja cijeli od decimalnog dijela (američki format)
Međutim kod C# u konzolnom unosu se treba paziti da se brojevi unose u formatu na koji je namješten OS (ako ne staviimo drukčije u programu),
pošto imamo na OS defaultno namješten HR jezik i kulturu brojevi se moraju unjeti u formatu koji razdvaja cijeli dio broja od decimalnog zarezom (europski format)
Ako se unese u konzolu decimalni broj sa točkom, a OS je postavljen na HR jezik i kulturu - npr 5.25 (točka za odvajanje cijelog dijela od decimalnog) - metod TryParse() i Convert.ToDouble() će se izvršiti,
ali će u program spremiti broj 525. On u našoj europskoj notaciji misli da ta točka označava tisućice.
došao do određene faze programa u izradi programa.. dakle problem mi je učitati r/polumjer(broj) sa tipkovnice i iskoristit ga u formuli za izračun volumena i oplošja.. zasad sam napisao samo formulu za volumen. možebitno treba dodati još koji namespace, a neki su valjda i viška. tek sam danas malo ozbiljnije uzeo C# u ruke, tj. tek ga počeo učit. btw. u C++ bih znao riješit zadatak. dobro, zanima me kako uvrstit broj koji se unese "r" u formulu ? korigirajte me ako još bilošto u kodu ne štima ...