Ejercicio parámetros

Escribir una función a la que le podamos pasar cuantos números queramos y nos devuelva el mayor y el menor:

(int,int) Extremos(1,5,3,0,90,-5)–>(-5,90)

Ejercicio arrays

1.- Crear una función Diagonal que nos cree un array bidimensional de enteros con valor 0 menos la diagonal principal que vale 1

Diagonal(3)->

1 0 0

0 1 0

0 0 1

Ejercicios cadenas

1.- Crear una función InternalTrim que elimine espacios de más DENTRO de una cadena.

InternalTrim(“Hola      que    tal”)=>”Hola que tal”

2.- Crear una función ToTitleCase que nos ponga la primera letra de cada palabra en mayúsculas

ToTitleCase(“hoLA que TAL”)=>”Hola Que Tal”

3.- Crear una función VocalsCount que nos diga las vocales que hay en una cadena

VocalsCount(“Hola que tal”)=>5

4.- Lo mismo pero teniendo en cuenta acentos

Primero, pensar

https://www.microsiervos.com/archivo/ia/inteligencia-artificial-no-es-tan-lista.html

Quizá fue una sorpresa que al añadir las frases en cuestión como comienzo de las respuestas, todo mejorara mágicamente. Entre ellas están todas estas:

#1 Pensemos paso a paso.
#2 Primero,
#3 Pensemos esto con lógica.
#4 Resolvamos el problema dividiéndolo en pasos.
#5 Seamos realistas y pensemos paso a paso.
#6 Pensemos como un detective, paso a paso.
#7 Pensemos.
#8 Antes de adentrarnos en la respuesta,
#9 La respuesta va a continuación de la prueba.

Ejercicios funciones

1.- Crear una función a la que le pasamos una cadena y un tamaño y nos devuelve un array de ese tamaño con la cadena como elemento

CreateArray(“hola”,3)==>{“hola”,”hola”,”hola”}

2.- Crear una función suma a la que le pasamos un array de enteros y nos devuelva la suma

Suma({1,2,3})===>6

3.- Crear una función extremos a la que le pasamos un array de enteros y nos devuelva el mayor y el menor

Extremos({2,8,1})=>(1,8)

4.- Crear una función a la que le pasamos un tamaño y nos devuelve un array de ese tamaño de enteros rellenando con los números naturales

CreateNumbers(5)===>{1,2,3,4,5}

 

5.- Crear una función hasOrder que devuelve un booleano si el array de enteros que le pasamos está ordenado de menor a mayor

hasOrder(´{1,5,8,34})===>true

hasOrder(´{1,15,8,34})===>false

6.- Modificar la función anterior para que incluya un parámetro opcional que valga 0 o 1 indicando si queremos que el orden sea ascendente o descendente

(Si sabes hacerlo, utiliza un enum para el tipo)

7.- Crear una función ReverseNumbers que devuelva el array invertido

ReverseNumbers({1,2,3,4})====>{4,3,2,1}

Ejercicio Anagrama recursivo

Crear una función que, pasándole una palabra, nos imprima todos los anagramas posibles.

Ejemplo: Anagrama(“sol”)

Imprime:

sol

slo

osl

ols

lso

los

 

Convenciones de nombres en C#

https://github.com/ktaranov/naming-convention/blob/master/C%23%20Coding%20Standards%20and%20Naming%20Conventions.md

Object Name Notation Length Plural Prefix Suffix Abbreviation Char Mask Underscores
Namespace name PascalCase 128 Yes Yes No No [A-z][0-9] No
Class name PascalCase 128 No No Yes No [A-z][0-9] No
Constructor name PascalCase 128 No No Yes No [A-z][0-9] No
Method name PascalCase 128 Yes No No No [A-z][0-9] No
Method arguments camelCase 128 Yes No No Yes [A-z][0-9] No
Local variables camelCase 50 Yes No No Yes [A-z][0-9] No
Constants name PascalCase 50 No No No No [A-z][0-9] No
Field name camelCase 50 Yes No No Yes [A-z][0-9] Yes
Properties name PascalCase 50 Yes No No Yes [A-z][0-9] No
Delegate name PascalCase 128 No No Yes Yes [A-z] No
Enum type name PascalCase 128 Yes No No No [A-z] No