본문 바로가기

카테고리 없음

RANDOM 클라스 사용해보기/선형탐색과 이진 탐색

반응형

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            Random random = new Random();
            int[] vs = new int[50];

            for (int i = 0; i < vs.Length; i++)
            {
                vs[i] = random.Next(1000);
            }
            
            Array.Sort(vs);
            PrintArray(vs);
            Console.WriteLine("검색할 숫자를 입력하세요");
            int key = int.Parse(Console.ReadLine());
            int count = 0;

            for (int i = 0; i < vs.Length-1; i++)
            {
                count++;
                if (key==vs[i])
                {
                    Console.WriteLine(vs[i]);
                    Console.WriteLine("선형탐색 비교횟수 : " + count);
                    break;
                }
                
            }

System.Linq;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp3
{
    public class MyClass
    {
        public static void PrintArray(int[] vs)
        {
            for (int i = 0; i < vs.Length; i++)
            {
                Console.Write("{0,5}{1}", vs[i], (i % 10 == 9) ? "\n" : "");
            }
        }

    }
    
    class Program
    {
        static void Main(string[] args)
        {
            Random random = new Random();
            int[] vs = new int[20];

            for (int i = 0; i < vs.Length; i++)
            {
                vs[i] = random.Next(100, 120);
            }
            PrintArray(vs);

            int max = vs[0];
            for (int i = 0; i < vs.Length; i++)
            {
                if (vs[i] > max)
                {
                    max = vs[i];
                }
            }
            Console.WriteLine("최댓값 : " + max); //렌덤 값 중에 서 최대 값가져오기 

            int min = vs[0];
            for (int i = 0; i < vs.Length; i++)
            {
                if (vs[i] < min)
                {
                    min = vs[i];
                }
            }

            Console.WriteLine("최소값 : " + min);


            int sum = 0;

            for (int i = 0; i < vs.Length; i++)
            {
                sum = sum + vs[i];
            }

            Console.WriteLine("합계 : " + sum);
            Console.WriteLine("평균 : " +(double)sum / vs.Length );

반응형