Kako da unosim i ispisujem podatke u C#, kao u C-u scanf...?

Console.Write("Poruka"); //printf
string s = Console.ReadLine(); //scanf
Hvala,
Šta je get, set i void?

Uzeo sam primer iz one skripte mala škola programiranja C# nešto mi nije jasan primer i čini mi se da se ovo lakše radi u C i C++:

class Program
{
static void Main(string[] args)
{
Matematika M = new Matematika();
Console.WriteLine ( M.Zbir (3, 4) );
Console.WriteLine ( M.Razlika (8, 2) );
Console.ReadKey();
}
class Matematika
{
public double Zbir(double A, double B)
{
return A + B;
}

public double Razlika(double A, double B)
{
return A - B;
}
}

Ako možeš ovaj primer da mi objasniš, i prilikom kompajliranja mi javlja grešku na ovoj zadnoj uglastoj zagradi?
 
Hvala,
Šta je get, set i void?

Uzeo sam primer iz one skripte mala škola programiranja C# nešto mi nije jasan primer i čini mi se da se ovo lakše radi u C i C++:

class Program
{
static void Main(string[] args)
{
Matematika M = new Matematika();
Console.WriteLine ( M.Zbir (3, 4) );
Console.WriteLine ( M.Razlika (8, 2) );
Console.ReadKey();
}
class Matematika
{
public double Zbir(double A, double B)
{
return A + B;
}

public double Razlika(double A, double B)
{
return A - B;
}
}

Ako možeš ovaj primer da mi objasniš, i prilikom kompajliranja mi javlja grešku na ovoj zadnoj uglastoj zagradi?

get i set su ti PROPERTIJI u kom jedan predstavlja ono sta ces vratiti get{return value;} a drugi sta ces setovati set{nesto=value}, a sve u cilju da to "nesto" postane javno za klasu u kojoj pozivas properti.

void ti znaci da funkcija ne vraca nista, da se razumemo, kada napises:

Kod:
int Funkcija()
{
  int nesto = 0;
  return nesto;
}
ona ima povratni tipa int odnosno celobrojni tip podatka.

a kada napises
Kod:
void Funkcija()
{
   int nesto = 0;
}
To znaci da funkcija nema povratni tip, ova funkcija je duzna samo nesto da uradi, ne moze biti tip podatka ili nesto drugo.

Kod:
class Program //Klasa Program
{ 
static void Main(string[] args) //Ulazna Funkcija/Metoda
{ 
Matematika M = new Matematika(); //instancira se klasa Matematika u objekat M, znaci sada M ima polja koja se nalaze u klasi Matematika
Console.WriteLine ( M.Zbir (3, 4) ); //Ispisi zbir 3 i 4, kao sto vidis ovde je napisao M.Zbir(3,4), znaci metoda unutar klase Matematika koja se zove Zbir zahteva unos dva realna broja tipa double
Console.WriteLine ( M.Razlika (8, 2) );//Ispisi 8-2 
Console.ReadKey(); //Zahteva se unos sa tastature da bi se izaslo iz programa, slicno kao u C getch();
} 
class Matematika //Klasa Matematika
{ 
public double Zbir(double A, double B) 
{ 
return A + B; //vrati vrednost zbira 3 i 4
} 

public double Razlika(double A, double B) 
{ 
return A - B; //vrati vrednost razlike 8 i 2
} 
} 
}


Sto se tice greske, falila ti je na kraju jos jedna zagrada }, samo prekopiraj gornji kod trebalo bi da radi
 
Hvala na objašnjenju uspeo sam da rešim samo umesto Consle.W... ide System.Console.Write... Interesujeme pošto vidim da se razumeš dosta u programiranje. Koliko je perspektivno učiti C#, za aplikativno programiranje, vidim da čak može da se i za mobilne telefone prave aplikacije kako za android tako i windows phone. Mene konkretno interesuje programiranje aplikacija za mobilne telefone, a pošto sam učio u školi C, C++ logično mi je bilo da pređem na C# pa na Javu. Šta misliš...
 
Hvala na objašnjenju uspeo sam da rešim samo umesto Consle.W... ide System.Console.Write... Interesujeme pošto vidim da se razumeš dosta u programiranje. Koliko je perspektivno učiti C#, za aplikativno programiranje, vidim da čak može da se i za mobilne telefone prave aplikacije kako za android tako i windows phone. Mene konkretno interesuje programiranje aplikacija za mobilne telefone, a pošto sam učio u školi C, C++ logično mi je bilo da pređem na C# pa na Javu. Šta misliš...

ne moras pisati System.Console.Write("poruka"); nego samo ukljucis

using System; //System je namespace koji sadrzi osnovne operacije u C#-u.

i onda mozes pisati
Console.Write("poruka"); //Console ti je klasa u okviru namespace-a(imenski prostor) System, a Write je metoda klase koja prima jedan parametar, a ostali su setovani na default parametre

C# je odlican jezik, pre svega za poslovne aplikacije.

Za mobilne telefone(pod pretpostavkom da mislis na Android) moras koristiti Mono framework, trenutno pretpostavljam koristis .Net framework(ako si u Visual Studiu), .Net ti je ogranicen na windowsu, i to je najveca mana C#-a, dakle njegova portabilnost, naravno postoji ovaj Mono frejmvork, ali od njeg asu mnogi digli ruke(mislim na sponzore) i nema neku buducnost, aplikacije u C#.Mono su dosta sporije od onih u Javi sto se tice Android telefona, na Windowsu aplikacije u C# su nesto brze od onih pravljenih u Javi.

Sa C#-a krenuti na Javu je lako, Java i C# su veoma slicni jezici, tacnije ne zna se ko je koga vise pokrao, tako da opusteno mozes preci na Javu i vrlo brzo skapirati.
 
A jel možeš da mi objasniš video sam neki tutorijal u vezi klase.
Kada u solucionu na add dodajem klasu kao zasebni fajl, class Učenik pa ime, prezime, godina, pa sada ime i prezime stvaim public znači javno a godina private, zašto nekada to radimo kao zasebni fajl a nekada u okviru jednog koda kao gore u primeru i šta u suštini predtavlja javno i privatno u kodu?...

Šta je ovo u kodu?

StreamReader sr = new StreamReader();
StreamWriter sw = new StreamWriter();
 
Poslednja izmena:
A jel možeš da mi objasniš video sam neki tutorijal u vezi klase.
Kada u solucionu na add dodajem klasu kao zasebni fajl, class Učenik pa ime, prezime, godina, pa sada ime i prezime stvaim public znači javno a godina private, zašto nekada to radimo kao zasebni fajl a nekada u okviru jednog koda kao gore u primeru i šta u suštini predtavlja javno i privatno u kodu?...

Šta je ovo u kodu?

StreamReader sr = new StreamReader();
StreamWriter sw = new StreamWriter();

Mozes kako hoces da pises klase to nema veze, ali kada se rade veci projekti pametnije ti je da koristis klase u sto vise zasebnih fajlova, cisto zbog preglednosti, nista vise...
Sad radi kako ti je lakse

kada nesto oznacis sa public, to znaci da je prisutno svuda, mozes ga bilo gde u okviru projekta pozvati.
kada stavis nesto na private, to znaci da je privatno, odnosno da ga ne mozes pozvati odakle hoces.

StreamReader i StreamWriter su klase u okviru imenskog prostora System.IO, odnosno input/output(ulazno/izlazne) operacije.

StreamReader ti sluzi za citanje podataka iz fajla.
StreamWriter za upisivanje podataka u fajl.


Nadji neki tutorijal za C#:

Evo nekih:
http://thenewboston.org/list.php?cat=15
http://msdn.microsoft.com/en-us/library/aa288436(v=vs.71).aspx
 
Izvini što smaram ali me ovo sada dosta interesuje imjoš uvek u literaturi i na internetu nemogu da neđem dobro objašnjenje za instanciranje... Da li bi mogao malo da mi pojasniš?

Instanciranje predstavlja realizaciju objekta.

Recimo da si imao klasu i Main

class Klasa{
}

static void Main(){
Klasa k = new Klasa(); //ovde realizujes objekat koji pripada klasi Klasa, dakle kreiras novi objekat klase "Klasa"
}

Ako me pittas zbog cega se to radi, nisam siguran, ali mislim da na taj nacin C# rasporedjuje realizovani objekat, to je ono sto u C-u predstavlja alokaciju memoriju(malloc).

Znaci upamti da svaku klasu moras da instanciras inace ces dobiti gresku...
 
Wrong, došao sam do primera sa SQL bazama, nije mi jasno, vidim da u VS ima opcija na add za dodavanje SQL baza a u primeru postoji SQL Server Managment Studio Express. Da li je potrebno da se skine i dodatno instalira ili dovoljno da se pomoću ovog dodavanja direktno iz VS završi posao? Konkretno nije mi jasno da li pored VS treba da se instalira ovaj SQL server?

mislim da VIsual Studio 2010 dolazi sa gotovim SQL serverom.

Uglavnom probaj, desni klik na projekat Add New Item->Sql Server Database ili tako nesto, idi next, next, next otvori bazu, ako je tu sve, onda radi.
 
Pokušavam da napravim Tajmer za gašenje kompjutera i na netu sam našo ovaj kod da li možeš da mi objasbiš delove koda...

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace ShutdownTimer
{
public partial class shutdownTimerForm : Form
{
private DateTime _ShutdownTime;
public DateTime ShutdownTime
{
get { return _ShutdownTime; }
set { _ShutdownTime = value; }
}


public shutdownTimerForm()
{
InitializeComponent();
}

private void startButton_Click(object sender, EventArgs e)
{
this.ShutdownTime = this.dateTimePicker1.Value;
this.DialogResult = DialogResult.OK;
this.Close();
}

private void shutdownTimerForm_Load(object sender, EventArgs e)
{
try
{
this.dateTimePicker1.Value = Properties.Settings.Default.ShutdownTime;
}
catch (Exception)
{

}

}
}
}
 

Back
Top