Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 30th, 2012  |  syntax: C#  |  size: 10.94 KB  |  hits: 17  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace ArrayService
  7. {
  8.     public class ArrayService
  9.     {
  10.         public static void ResetArray(int[] arr)
  11.         {
  12.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  13.             //טענת יציאה: הפעולה מאפסת את המערך
  14.             for (int i = 0; i < arr.Length; i++)
  15.                 arr[i] = 0;
  16.         }
  17.  
  18.         public static void InsertToArray(int[] arr)
  19.         {
  20.             //טענת כניסה: הפעולה מקבלת מערך שאין בו ערכים
  21.             //טענת יציאה: הפעולה מכניסה ערכים למשתני המערך
  22.             for (int i = 0; i < arr.Length; i++)
  23.             {
  24.                 Console.WriteLine("Insert Number: ");
  25.                 arr[i] = int.Parse(Console.ReadLine());
  26.             }
  27.         }
  28.         public static void PrintArray(int[] arr)
  29.         {
  30.             //טענת כניסה: הפעולה מקבלת מערך מלא בערכים
  31.             //טענת יציאה: הפעולה מדפיסה את משתני המערך לפי סדר קליטתם
  32.  
  33.             for (int i = 0; i < arr.Length; i++)
  34.                 Console.WriteLine(arr[i] + " ");
  35.             Console.WriteLine();
  36.         }
  37.  
  38.         public static void OppositePrint(int[] arr)
  39.         {
  40.             //טענת יציאה: הפעולה מקבלת מערך מלא בערכים
  41.             //טענת יציאה: הפעולה מדפיסה את משתני המערך הפוך מסדר קליטתם
  42.  
  43.             for (int i = arr.Length - 1; i >= 0; i--)
  44.                 Console.WriteLine(arr[i] + " ");
  45.             Console.WriteLine();
  46.         }
  47.  
  48.         public static int SumOfArray(int[] arr)
  49.         {
  50.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  51.             //טענת יציאה: הפעולה מחזירה את סכום איברי המערך
  52.             int sum = 0;
  53.             for (int i = 0; i < arr.Length; i++)
  54.             {
  55.                 sum = sum + arr[i];
  56.             }
  57.             return sum;
  58.         }
  59.  
  60.         public static double AvgOfArray(int[] arr)
  61.         {
  62.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  63.             //טענת יציאה: הפעולה מחזירה את ממוצע איברי המערך
  64.            
  65.             int sum=0;
  66.             for(int i=0; i<arr.Length; i++)
  67.                 sum+=arr[i];
  68.             return sum / arr.Length;
  69.         }
  70.  
  71.         public static void ZugiArray(int[] arr)
  72.         {
  73.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  74.             //טענת יציאה: הפעולה מחזירה את איברי המערך במקומות הזוגיים
  75.  
  76.             for (int i = 0; i < arr.Length; i++)
  77.             {
  78.                 if (i % 2 == 0)
  79.                     Console.WriteLine(arr[i] + " ");
  80.             }
  81.             Console.WriteLine();
  82.         }
  83.  
  84.         public static void EzugiArray(int[] arr)
  85.         {
  86.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  87.             //טענת יציאה: הפעולה מחזירה את איברי המערך במקומות האי זוגיים
  88.  
  89.             for (int i = 0; i < arr.Length; i++)
  90.             {
  91.                 if (i % 2 != 0)
  92.                     Console.WriteLine(arr[i] + " ");
  93.             }
  94.             Console.WriteLine();
  95.         }
  96.  
  97.         public static void ValueEzugiArray(int[] arr)
  98.         {
  99.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  100.             //טענת יציאה: הפעולה מדפיסה את איברי המערך שערכם אי זוגי
  101.  
  102.             for (int i = 0; i < arr.Length; i++)
  103.             {
  104.                 if (arr[i] % 2 != 0)
  105.                     Console.WriteLine(arr[i] + " ");
  106.             }
  107.             Console.WriteLine();
  108.         }
  109.  
  110.         public static void ValueZugiArray(int[] arr)
  111.         {
  112.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  113.             //טענת יציאה: הפעולה מדפיסה את איברי המערך שערכם זוגי
  114.             for (int i = 0; i < arr.Length; i++)
  115.             {
  116.                 if (arr[i] % 2 == 0)
  117.                     Console.WriteLine(arr[i] + " ");
  118.             }
  119.             Console.WriteLine();
  120.         }
  121.  
  122.         public static int MaxInArray(int[] arr)
  123.         {
  124.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  125.             //טענת יציאה: הפעולה מחזירה את המספר המקסימילי במערך
  126.             int max = int.MaxValue;
  127.             for (int i = 0; i < arr.Length; i++)
  128.             {
  129.                 if (arr[i] > max)
  130.                     max = arr[i];
  131.             }
  132.             return max;
  133.         }
  134.  
  135.         public static int MinInArray(int[] arr)
  136.         {
  137.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  138.             //טענת יציאה: הפעולה מחזירה את המספר המנימלי במערך
  139.             int min = int.MaxValue;
  140.             for (int i = 0; i < arr.Length; i++)
  141.             {
  142.                 if (arr[i] < min)
  143.                     min = arr[i];
  144.             }
  145.             return min;
  146.         }
  147.  
  148.         public static bool IfShavim(int[] arr)
  149.         {
  150.             //טענת כניסה: הפעולה מקבלת מערך מלא בערכים
  151.             //טענת יציאה: הפעולה מדפיסה הודעה אם כל האיברים שווים או לא
  152.             bool check = true;
  153.             int bodek = arr[0];
  154.             for (int i = 1; i < arr.Length; i++)
  155.             {
  156.                 if (bodek != arr[i])
  157.                     check = false;
  158.             }
  159.             return check;
  160.         }
  161.  
  162.         public static void IfMemuyan(int[] arr)
  163.         {
  164.             //טענת כניסה: הפעולה מקבלת מערך מלא בערכים
  165.             //טענת יציאה: הפעולה מדפיסה הודעה אם האיברים ממוינים בסדר עולה או לא
  166.  
  167.             bool mesudar = true;
  168.             for (int i = 0; i < arr.Length - 1; i++)
  169.             {
  170.                 if (arr[i] >= arr[i + 1])
  171.                     mesudar = false;
  172.             }
  173.             Console.WriteLine(mesudar);
  174.         }
  175.  
  176.         public static int MaxIndexOfArray(int[] arr)
  177.         {
  178.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  179.             //טענת יציאה: הפעולה מחזירה את האינדקס של המספר המקסימלי במערך
  180.  
  181.             int mone = 0;
  182.             int max = int.MinValue;
  183.             for (int i = 0; i < arr.Length; i++)
  184.             {
  185.                 if (arr[i] > max)
  186.                 {
  187.                     max = arr[i];
  188.                     mone = i;
  189.                 }
  190.             }
  191.             return mone;
  192.         }
  193.  
  194.         public static int MinIndexOfArray(int[] arr)
  195.         {
  196.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  197.             //טענת יציאה: הפעולה מחזירה את האינדקס של המספר המינימלי במערך
  198.  
  199.             int mone = 0;
  200.             int min = int.MaxValue;
  201.             for (int i = 0; i < arr.Length; i++)
  202.             {
  203.                 if (arr[i] < min)
  204.                 {
  205.                     min = arr[i];
  206.                     mone = i;
  207.                 }
  208.             }
  209.             return mone;
  210.         }
  211.  
  212.         public static void RandomNumbersToArray(int[] arr)
  213.         {
  214.             //טענת כניסה: הפעולה מקבל מערך שאין בו ערכים
  215.             //טענת יציאה: הפעולה מכניסה ערכים רנדומליים בין 1 ל-100
  216.  
  217.             Random rnd = new Random();
  218.             for (int i = 0; i < arr.Length; i++)
  219.                 arr[i] = rnd.Next(1, 101);
  220.         }
  221.  
  222.         public static int SecondMax(int[] arr)
  223.         {
  224.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  225.             //טענת יציאה: הפעולה מחזירה את המספר השני הכי גדול במערך
  226.             int max = 0;
  227.             int SecondMax = 0;
  228.             for (int i = 0; i < arr.Length; i++)
  229.                 if (arr[i] > max)
  230.                     max = arr[i];
  231.  
  232.             for (int i = 0; i < arr.Length; i++)
  233.                 if (arr[i] < max && arr[i] > SecondMax)
  234.                     SecondMax = arr[i];
  235.  
  236.             return SecondMax;
  237.         }
  238.  
  239.         public static int CountMax(int[] arr)
  240.         {
  241.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  242.             //טענת יציאה: הפעולה מחזירה את מספר הפעמים שיש את מספר המקסימום
  243.  
  244.             int max = 0;
  245.             int count = 0;
  246.  
  247.             for (int i = 0; i < arr.Length; i++)
  248.                 if (arr[i] > max)
  249.                     max = arr[i];
  250.  
  251.             for (int i = 0; i < arr.Length; i++)
  252.                 if (arr[i] == max)
  253.                     count++;
  254.  
  255.             return count;
  256.  
  257.         }
  258.  
  259.         public static int NegativRezef(int[] arr)
  260.         {
  261.             //טענת כניסה: הפעולה מקבלת מערך של מספרים שלמים
  262.             //טענת יציאה: הפעולה מחזירה את אורך הרצף השלילי הראשון במערך
  263.  
  264.             int count = 0;
  265.             int i = 0;
  266.             while (i < arr.Length && arr[i] >= 0)
  267.                 i++;
  268.             while (i < arr.Length && arr[i] < 0)
  269.             {
  270.                 count++;
  271.                 i++;
  272.             }
  273.             return count;
  274.         }
  275.  
  276.         public static int[] FillArray(int n)
  277.         {
  278.             //טענת כניסה: הפעולה תמלא את המערך במספרים שלמים כמספר הפעמים שנבחר
  279.             //טענת יציאה: הפעולה מחזירה את המערך
  280.  
  281.             int[] arr = new int[n];
  282.             for (int i = 0; i < arr.Length; i++)
  283.             {
  284.                 Console.WriteLine(i + " הכנס ערך מספרי שלם לתא מספר --> ");
  285.                 arr[i] = int.Parse(Console.ReadLine());
  286.             }
  287.             return arr;
  288.         }
  289.  
  290.         public static int TwoMax(int[] arr)
  291.         {
  292.             //טענת כניסה: הפעולה מקבלת מערך שיש בו ערכים
  293.             //טענת יציאה: הפעולה מחזירה את המקסימום העוקב
  294.  
  295.             int max = arr.Max();
  296.             int smax = arr[0];
  297.             for (int i = 1; i < arr.Length; i++)
  298.             {
  299.                 if (arr[i] > smax && arr[i] < max)
  300.                     smax = arr[i];
  301.             }
  302.             return smax;
  303.         }
  304.     }
  305. }