0
点赞
收藏
分享

微信扫一扫

车牌问题-代码应用于生活

Yaphets_巍 2022-04-07 阅读 90
c#

问题描述:

一共有359964张车牌,每张车牌都不可出现4,现在一项有324张车牌,例如:第一箱车牌最后一张是500,第二箱车牌最后一张是900,现在求出每一箱最后一张车牌

思路:

先定义数组359964,先求出有多少张没有4的,然后定义数组将没有4的数赋值进去,最后求出每一组最后一个车牌数值。

代码:

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            //359964
        int[] a = new int [359964];//总
        int judge = 0;//判断变量
        int temp = 0;//临时变量
        int count = 0;//含4的总数
        int num = 0;//不含4的变量
            for (int i =0; i < 359964; i++)//初始化a
            {
                a[i] = i+1;
        
            }
            //a中含有4的置为0
            for (int i = 0; i < 359964; i++)
            {
                temp = a[i];
                
                while (temp > 0)
                {
                    judge = temp % 10;
                    if (judge == 4)
                    {
                        a[i]=0;
                        count++;
                        break;
                    }
                    temp = temp / 10;
                }
            }

            
            num = 359964 - count;
            //Console.WriteLine("一共有这些号码里面没有4:"+num);
            //int[] b = new int[209919];//所有不含4的数
            int[] b = new int[359964 - count];//所有不含4的数
            //数组a中的非0赋值给数组b
            for (int i = 0, j = 0; i < 359964; i++)
            {
                if (a[i] != 0)
                    b[j++] = a[i];
            }

            for (int i = 0, j = 1; i < 209919 && j < 648; j++)
            {
                i = (324 * j) - 1;
                Console.WriteLine("第" + j + "组:" + b[i]);
            }

        }
    }
}
举报

相关推荐

0 条评论