9.26下午VR课程

95 阅读2分钟

using System; using System.Data; namespace ConsoleApp926 { class Programs { static void Main(string[] args) {

            //while循环  while(循环的判断条件)如果条件为真会一直执行循环体的内容
            //死循环
            while (true)
            {
                Console.WriteLine("1");
            }
            

        //有限循环换  只需让判断条件有一次变为假

        int i = 10;
        while (i > 2)
        {
            Console.WriteLine(i);
            i--;  /*循环10-》3,共8次*/
        }
            //例题输入整数a,计算1+2+3+...的值
           int sum=0;
           Console.WriteLine("请输入一个数n");
           int n = Convert.ToInt32(Console.ReadLine());
           int j = 1;
           while (j<=n)
           {
               sum += j;
               j++;
           }
           Console.WriteLine(sum);

            //例题:输出1-100之间的所有偶数
            int a=1;
            while (a <= 100 && a%2==0)
            {
                Console.WriteLine(a);
                a++;
            }//没运行出来,改进

            //例题2:对于任意大于1的自然数n,若n为奇数,将n编程为3n+1 ,否则将n变成n的一半,经过若干次变化后n最终会变为1
            Console.WriteLine("请输入一个数n1");
            int n1 = Convert.ToInt32(Console.ReadLine());
            int j1 = 0;
            while (n1 != 1)
            {
                if (n1% 2 == 1)
                    {
                    n1 = n1 * 3 + 1;
                    }
                else{
                    n1 = n1 / 2;
                }
                j1++;
            }
            Console.WriteLine(j1);



            //例题3:班上有若干名学生,输入学生的个数,然后输入学生的年龄,计算平均年龄,保留两位小数
            Console.WriteLine("请输入学生个数n2");
            int n2 = Convert.ToInt32(Console.ReadLine());
            double age_sum = 0.0;
            int n4 = n2;
            while (n2>0)
            {
                Console.WriteLine("请输入第{0}个学生的年龄",n2);
                int age = Convert.ToInt32(Console.ReadLine());
                age_sum=age_sum+age;
                n2--;
            }
            Console.WriteLine(Math.Round(age_sum / n4,2));



            //for循环
            //for (初始化; 判断条件; 增量表达式)
            //{
            //    循环体
            //}

            //例题4:输入两个正整数n和m,计算n和m之间(包含n和m)所有能被17整除的和,并输出和
            Console.WriteLine("请输第一个数n");
            int n = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入第二个数m");
            int m = Convert.ToInt32(Console.ReadLine());
            int n_sum = 0;
            int num5 = n;
            if (n > m)  /*保证n<m*/
            {
                n = m;
                m = num5;
            }
            for (int a=n; n<=m; a++)
            {
                if (a % 17 == 0)
                {
                    Console.WriteLine(a);
                    n_sum = n_sum + a;
                }
                n++;
            }
            Console.WriteLine("能被17整除的数和为{0}", n_sum);


            //do...while循环  不管后面的while循环的条件是否满足都先执行一次
            //例题5:输入一个整数a,和一个正整数n计算乘方a的n次方
            Console.WriteLine("请输第一个数a3");
            Console.WriteLine("请输入初始高度");
            Console.WriteLine("请输第一个数b3");
            int b3 = Convert.ToInt32(Console.ReadLine());
            int a_num = 1;
            for(int i = 0; i < b3; i++)
            {
                a_num = a_num * a3;

            }
            Console.WriteLine(a_num);


            //例题6:球从某一高度落下,每次反弹为原来高度的一半,再下落,计算第10次反弹多高?在十次落地时经过多少米
            Console.WriteLine("请输入初始高度");
            double height = Convert.ToDouble(Console.ReadLine());
            double h_sum = 0;/*经过的高度*/
            for( int h1 = 1; h1 <= 10;h1++)
            {
                h_sum = h_sum + height;/*初始高度*/
                height = height / 2;
                h_sum = h_sum + height; /*加上反弹回来的高度*/
            }
            Console.WriteLine("反弹的高度为{0},经过高度为:{1}",height,h_sum);

            //例题7:打印水仙花数,一个三位数,各个数的立方等于该数,则称为水仙花数
            
            for(int i = 100; i <= 999;i++)
            {
                int first_num = i /100;
                int second_num = i / 10%10;
                int third_num = i % 100 % 10;
                int totle_num = first_num*first_num*first_num+second_num*second_num*second_num*third_num * third_num * third_num;
                if (i==first_num * first_num * first_num + second_num * second_num * second_num + third_num * third_num * third_num)
                {
                    Console.WriteLine(i); 
                }
            }
        }
    }
}