Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Giampaolo Brancatello
Metodi (1° parte) Giampaolo Brancatello
2
Sommario Metodi Tipi di metodo Senza valore di ritorno
Con valore di ritorno Passaggio di parametri Nessun Parametro Passaggio per valore Passaggio per riferimento ref out
3
Usiamo sempre dei metodi ….
Password Input1 Input2 Interruttore “Apriti” Calcolatore Output
4
Metodi Predefiniti in C#
Console.WriteLine(” Hello world!”); double n = Math.Sqrt(9); parametri Hello world! 9 Console.WriteLine Math.Sqrt 3
5
Metodi Predefiniti in C#
int N = int.Parse(”5”); double risp =Math.Max(9, 2); String “5” 9 2 int.Parse Math.Max Int 5 9
6
una funzione/procedura situata all’interno di una Classee
Cosa sono i metodi ? Un Metodo è una funzione/procedura situata all’interno di una Classee System.Console.WriteLine(“Hello World!”);
7
Tipi di metodo J = Math.Max(5, 20);
1. Metodi senza valore di ritorno Procedura Console.WriteLine(“Hello World!”); Nome metodo Parametro Nome Classe 2. Metodi con valore di ritorno Funzione J = Math.Max(5, 20); J=20 Nome Classe parametro Nome Metodo
8
Senza valore di ritorno (void)
Tipi di Metodo n1 n2 Hello world! Math.Max Console. WriteLine Max di n1 & n2 Senza valore di ritorno (void) Con valore di ritorno
9
Metodi : Esempio * ** Program End using System; Classe Metodo_Esempio { static void Main() { displaybox(); Console.WriteLine("Program End"); } static void displaybox() { Console.WriteLine("x"); Console.WriteLine("xx"); Monitor 1 3 2
10
Sommario Metodi: nozioni di base Utilizzo dei Metodi
Modalità di passaggio dei parametri Passaggio per valore Passaggio per riferimento
11
1.Definire il metodo Metodo
Utilizzo dei metodi 1.Definire il metodo Metodo 2.Richiamare il Metodo Nota: spesso si usa il termine “invocare” il metodo per indicare il passo 2
12
Definizione di metodi in C#
static <return-tipo> <nome-metodo>(<lista parametri>) { <const/ dichiarazione di variabile>; <istruzioni>; } #note sul: tipo di ritorno può essere int, double, string, … ed è necessario utilizzare return void = Senza valore di ritorno
13
Esempi di dichiarazione di metodi
static void displaybox () { } static int calage () { } static int calbox(int x,int y) { }
14
Esempio1: Senza valori di ritorno
using System; Classe NReturned { static void Main() { Console.WriteLine(”Hello, Pippo”); } HelloP Hello, Pippo
15
Esempio1: Non-Returned Value
using System; Classe NReturned { static void HelloP() { Console.WriteLine(”Hello, Pippo”); } static void Main() { HelloP(); Hello Pippo
16
Esempio2: Senza valori di ritorno con parametri
using System; Classe NReturned { static void Main() { Console.WriteLine(”Ciao, AAA”); Console.WriteLine(”Ciao, BBB”); Console.WriteLine(”Ciao, CCC”); } string string Nome Ciao Ciao, Nome
17
Esempio2: Senza valori di ritorno con parametri
using System; Classe NReturned { static void Ciao(string Nome) { Console.WriteLine(”Ciao, {0}”, Nome); } static void Main() { Ciao(”AAA”); Ciao(”BBB”); Ciao(”CCC”); Ciao string Nome Ciao, Nome Monitor Ciao, AAA Ciao, BBB Ciao, CCC
18
**** * **** * **** * **** *
Esempio 3 static void Main(){ int i,j,n; Console.WriteLine("Square size = 2"); for(i=0;i<2;i++){ for(j=0;j<2;j++) Console.Write("*"); Console.WriteLine(); } Console.WriteLine("Square size = 4"); for(i=0;i<4;i++){ for(j=0;j<4;j++) int n DrawSquare Video ... **** * **** * **** * **** * ... Square size = 2 ** ** Square size = 4 **** **** ... ...
19
**** * **** * **** * **** *
Esempio 3 static void Main(){ Console.WriteLine("Square size = 2"); drawSquare(2); Console.WriteLine("Square size = 4"); drawSquare(4); } static void drawSquare(int n){ int i,j; for(i=0;i<n;i++){ for(j=0;j<n;j++) Console.Write("*"); Console.WriteLine(); Monitor DrawSquare int n **** * **** * **** * **** * ... Square size = 2 ** ** Square size = 4 **** **** **** ****
20
Self Test 1 Scrivi il metodo PrintNumber(n) Esempio PrintNumber
Riceve come n (intero e positivo) Stampa a video n Esempio int n 7 PrintNumber PrintNumber n
21
Self Test 1 static void PrintNumber(int n) { int i;
Write the MetodiPrintNumber(n) Recieve parametro n Show n n static void PrintNumber(int n) { int i; for(i=1;i<=n;i++) Console.Write(i); }
22
Sommario Metodo tipo di Metodo Senza valore di ritorno
Con valore di ritorno Passaggio parametri Nessun parametro Passaggio per valore Passaggio per riferimento ref out
23
Sintassi in C# #nota tipo di ritorno
static <tipo di ritorno> <Nome metodo>(<lista parametri>) { <dichiarazione variabili locali>; <istruzioni>; } #nota tipo di ritorno può essere: int, double, string, … necessita dell’ istruzione return void = Senza valore di ritorno
24
Metodo con valore di ritorno
static void PrintNumber(int n) { double n, risp; n = int.Parse(Console.ReadLine()); risp = Math.Sqrt(n); Console.Write(“Root {0} is equal {1}",n,risp); } Math.Sqrt n n
25
Esempio 1 (valori di ritorno)
using System; Classe Returned { static void Main() { int j; j = 2*2; Console.WriteLine(”{0}”, j); j = 5*5; } n Quad n2
26
Esempio 1 n n2 using System; Classe Returned {
static int Quad(int n) { return n*n; } static void Main() { int j; j = Quad(2); //j=2*2; Console.WriteLine(”{0}”, j); j = Quad(5); //j=5*5; Quad n n2 Video 4 25
27
Esempio 2: ricerca dei numeri primi
static void Main() { int n,i,count=0; n = int.Parse(Console.ReadLine()); for(i=1;i<=n;i++) if(n%i==0) count++; if(count==2) Console.Write("{0} è primo.",n); } Procedura per vedere se n è primo
28
True if x è primo. False if x non è primo
Esempio 2 static void Main() { int n,i,count=0; n = int.Parse(Console.ReadLine()); for(i=1;i<=n;i++) if(n%i==0) count++; if(count==2) Console.Write("{0} è primo.",n); } x Is_Prime True if x è primo. False if x non è primo
29
True if n è primo. False if n non è primo
Esempio 2 static bool Is_Prime(int x){ int i,count=0; for(i=1;i<=x;i++) if(x%i==0) count++; if(count==2) return true; else return false; } static void Main(){ int n = int.Parse(Console.ReadLine()); if(Is_Prime(n) == true) Console.Write("{0} è primo.",n); Is_Prime x True if n è primo. False if n non è primo
30
Esempio 3: calcolo volume cilindro
static void Main() { double r,h,V; r = double.Parse(Console.ReadLine()); h = double.Parse(Console.ReadLine()); V = Math.Pi*r*r*h; Console.Write("V = {0}",V); } r h v_cilindro V
31
Esempio 3: Returned Value
v_cilindro r V h static double v_cilindro(double r, double h){ return Math.PI*r*r*h; } static void Main() { double r,h,V; r = double.Parse(Console.ReadLine()); h = double.Parse(Console.ReadLine()); V = v_cilindro(r,h); Console.Write("V = {0}",V);
32
Self Test 1 Creare un metodo Power4(n)
Deve restituire il valore n*n*n*n Es. int j = Power4(3); //Return 81 int int n static ____ Power4(___________________) { } int risp; return n*n*n*n; risp = n*n*n*n; return risp;
33
Self Test 2 Definire metodo Max(x, y, z)
Return Max Value Es. int j = Max(5, 20, 12); //Return 20 int int x, int y, int z static ____ MAX(___________________) { } int risp; if(x >= y && x >= z) return x; risp = x; else if(y >= x && y >= z) risp = y; return y; else return z; risp = z; return risp;
34
Struttura C# - Metodi multipli
Namespace Class Main() Metodo1() Metodo2() Metodo3() MetodoN()
35
Esempio 5 : metodi multipli
static double PuntoMedio(double n1, double n2) { return (n1+n2)/2; } static void Stampa(double x, double y) Console.Write("P. medio = {0} ", PuntoMedio(x,y)); static void Main(string[] args) { Console.Write(“Inserire 2 valori: "); double a1 = double.Parse(Console.ReadLine()); double a2 = double.Parse(Console.ReadLine()); Stampa(a1, a2); }
36
Domande ?
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.