Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /// Uppgift 1
- /// <summary>
- /// Metod som tar emot ett heltal (1-10) och beräknar dess multiplikationstabell (upp till *10).
- /// </summary>
- /// <param name="siffra">Det heltal vars multiplikationstabell man vill få uträknad.</param>
- /// <returns>Returnerar en array med 10 platser med de 10 tal som finns med i den uträknade multiplikationstabellen.</returns>
- static public int[] CalculateMultTable(int siffra)
- {
- int[] tabell = new int[10];
- for (int i = 0; i < 10; i++)
- {
- tabell[i] = (siffra * (i + 1));
- }
- return tabell;
- }
- /// <summary>
- /// Metod som tar emot en array av heltal och skriver ut dess värden.
- /// </summary>
- /// <param name="array">Den arrayen av heltal som man vill få utskriven.</param>
- static void PrettyPrint(int[] array)
- {
- for (int i = 0; i < 10; i++)
- {
- Console.Write(array[i]);
- if (i < 9)
- {
- Console.Write(", "); //If-satsen innehållandes detta ser till att inte skriva ut kommatecken efter det sista talet.
- }
- }
- }
- /// <summary>
- /// Metod som returnerar en tvådimensionell array som innehåller ettan till tians multiplikationstabell.
- /// </summary>
- /// <returns>Returnerar en tvådimensionell array med ettan till tians multiplikationstabell på varsin rad.</returns>
- public static int[,] CalculateMultMatrix()
- {
- int[,] tabell = new int[10, 10];
- for (int i = 0; i < 10; i++)
- {
- for (int y = 0; y < 10; y++)
- {
- tabell[i, y] = ((i + 1) * (y + 1));
- }
- Console.WriteLine(); // För att skapa en ny rad efter varje multiplikationstabell.
- }
- return tabell;
- }
- /// <summary>
- /// Metod som tar emot två arrayer i form av heltal, samt ett heltal (utan array) där samtliga värden i första arrayen
- /// flyttas över till den andra arrayen, där det arraylösa heltalet pekar på var i den andra arrayens index värdena från den
- /// första arrayen ska kopieras in.
- /// </summary>
- /// <param name="arr1">Den första arrayen med ett antal heltal. Det är heltalen i denna array som sedan ska kopieras in i den andra arrayen.</param>
- /// <param name="arr2">Den andra arrayen med ett antal heltal. Det är i denna array heltalen från den första arrayen ska kopieras in till.</param>
- /// <param name="start">Det heltal som pekar på var någonstans i den andra arrayens index som värdena från den första arrayen ska kopieras in.</param>
- static void CopyTo(int[] arr1, int[] arr2, int start)
- {
- for (int i = 0; i < arr2.Length; i++)
- {
- if (i >= start && (i - start) < arr1.Length)
- {
- arr2[i] = arr1[i - start];
- }
- }
- }
- /// <summary>
- /// Metod som tar en emot array av heltal och ett heltal (utan array) där det arraylösa talet läggs in i en ny array
- /// tillsamans med alla värden i den ursprungliga arrayen.
- /// </summary>
- /// <param name="originalArray">Den array man vill lägga till ett ytterliggare värde i.</param>
- /// <param name="number">Det värde man vill lägga till i arrayen.</param>
- /// <returns>Returnerar en ny array med alla värden från den ursprungliga arrayen tillsammans med det nya värdet.</returns>
- static public int[] Push(int[] originalArray, int number)
- {
- int[] finalArray = new int[originalArray.Length + 1];
- CopyTo(originalArray, finalArray, 0);
- finalArray[finalArray.Length - 1] = number; //>--- Behövs detta då number inte ens returneras?
- return finalArray;
- }
- /// <summary>
- /// Metod för att slå ihop två arrayer och få ut en ny array där alla värden från de ursprungliga arrayerna finns med.
- /// </summary>
- /// <param name="left">Den första arrayen vars värden man vill ha med i den nya arrayen. Denna arrays värden är de
- /// som kommer vara först i den nya arrayen.</param>
- /// <param name="right">Den andra arrayen vars värden man vill ha med i den nya arrayen. Denna arrays värden kommer
- /// placeras efter den första arrayens värden.</param>
- /// <returns>Returnerar en ny array där samtliga värden från de två ursprungliga arrayerna finns med.</returns>
- static public int[] Concat(int[] left, int[] right)
- {
- int[] all = new int[left.Length + right.Length];
- CopyTo(left, all, 0);
- CopyTo(right, all, left.Length);
- return all;
- }
- /// <summary>
- /// Metod som tar emot en array med heltal och returnerar alla dess jämna eller udda tal, med hjälp av en boolean som indikerar
- /// vilket som ska returneras.
- /// </summary>
- /// <param name="numbers">En array av heltal som man vill få ut alla jämna eller udda tal ifrån.</param>
- /// <param name="even">En boolean som indikerar om det är de jämna eller udda talen i arrayen som ska returneras,
- /// är värdet på booleanen true returneras alla jämna tal, är värdet false returneras alla udda tal.</param>
- /// <returns>Returnerar arrayens alla jämna eller udda tal, beroende på värdet i booleanen.</returns>
- static public int[] TakeNumbers(int[] numbers, bool even)
- {
- int[] array = new int[0];
- for (int i = 0; i < numbers.Length; i++)
- {
- if (even)
- {
- if (numbers[i] % 2 == 0)
- {
- array = Push(array, numbers[i]);
- }
- }
- else
- {
- if ((numbers[i] % 2) > 0)
- {
- array = Push(array, numbers[i]);
- }
- }
- }
- return array;
- }
- /// <summary>
- /// Metod för att räkna ut hur många ord som finns i en angiven textsträng.
- /// </summary>
- /// <param name="text">Den textsträng man vill beräkna antal ord i.</param>
- /// <returns>Returnerar ett heltal med antalet ord i den angivna textsträngen.</returns>
- static public int WordCount(string text)
- {
- string[] lista = text.Split(' ');
- int words = lista.Length;
- return words;
- }
- /// <summary>
- /// Metod för att se om ett angivet ord är ett palindrom eller inte.
- /// </summary>
- /// <param name="word">Det ord man vill se om det är ett palindrom eller inte.</param>
- /// <returns>Returnerar true om ordet är ett palindrom, och false om ordet inte är ett palindrom.</returns>
- static public bool IsPalindrome(string word)
- {
- word = word.ToUpper();
- char[] reversedWord = new char[word.Length];
- int lastChar = word.Length - 1;
- for (int i = 0; i <= word.Length - 1; i++)
- {
- reversedWord[lastChar] = word[i];
- lastChar = lastChar - 1;
- }
- string word2 = new string(reversedWord);
- if (word == word2)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement