【每日一题 基础题】[蓝桥杯 2020 省 AB3] 乘法表

ops/2024/12/20 0:56:35/

[蓝桥杯 2020 省 AB3] 乘法表

乘法表

九九乘法表是学习乘法时必须要掌握的。在不同进制数下,需要不同的乘法表。
例如, 四进制下的乘法表如下所示:
1 * 1=1
2 * 1=2 2 * 2=10
3 * 1=3 3 * 2=12 3 * 3=21
请注意,乘法表中两个数相乘的顺序必须为样例中所示的顺序,不能随意交换两个乘数。
给定 P,请输出 P 进制下的乘法表。
输入格式
输入一个整数 P
输出格式
输出 P 进制下的乘法表。P 进制中大于等于 10 的数字用大写字母 A、B、C⋯ 表示。

这题不需要任何高精,只需要进制转换。
这里只需用到 10 进制转 k 进制,而在程序中我们经常用到短除法取余的方法。举个例子,当 k=3 时,10 进制数 413 的转换过程是这样的:
413÷3=137⋯⋯2
137÷3=45⋯⋯2
45÷3=15⋯⋯0
15÷3=5⋯⋯0
5÷3=1⋯⋯2
1÷3=0⋯⋯1
把余数从下往上连起来,得 120022,事实上,这就是 413 的 3 进制数。

Java

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int p = scanner.nextInt();for (int i = 1; i < p; i++) {for (int j = 1; j <= i; j++) {int product = i * j;String iStr = convertToBase(i, p);String jStr = convertToBase(j, p);String productStr = convertToBase(product, p);System.out.print(iStr + "*" + jStr + "=" + productStr + " ");}System.out.println();}}public static String convertToBase(int num, int base) {if (num == 0) return "0";StringBuilder result = new StringBuilder();while (num > 0) {int remainder = num % base;if (remainder < 10) {result.append(remainder);} else {result.append((char)('A'+ (remainder - 10)));}num /= base;}return result.reverse().toString();}
}

C

#include<bits/stdc++.h>
using namespace std;
int n;
string jz(int x,int y)//把x转换为y进制
{string now,ret;while(x>0){int add = x%y;//记录余数if(add>=10)//余数大于10的要变为字母now+=add-10+'A';else now+=add+'0'; x/=y;}int len = now.size();for(int i = 0;i<=len/2;i++)//倒着存ret+=now[len-i-1];return ret;
}
int main()
{cin>>n;for(int i = 1;i<n;i++){for(int j = 1;j<=i;j++)cout<<jz(i,n)<<'*'<<jz(j,n)<<'='<<jz(i*j,n)<<' ';//记得转换进制cout<<'\n';}return 0;
}

http://www.ppmy.cn/ops/143334.html

相关文章

【HarmonyOS NEXT】Web 组件的基础用法以及 H5 侧与原生侧的双向数据通讯

关键词&#xff1a;鸿蒙、ArkTs、Web组件、通讯、数据 官方文档Web组件用法介绍&#xff1a;文档中心 Web 组件加载沙箱中页面可参考我的另一篇文章&#xff1a;【HarmonyOS NEXT】 如何将rawfile中文件复制到沙箱中_鸿蒙rawfile 复制到沙箱-CSDN博客 目录 如何在鸿蒙应用中加…

vue_shop项目

项目描述&#xff1a; 实现效果&#xff1a; 在终端中输入命令&#xff1a; 查看工作区是否干净&#xff1a;git status 创建分支名字为login&#xff1a;git checkout -b login 查看现有的分支&#xff1a;git branch 现在就有主 分支(master)和登录分支(login)了 可以在项目…

M9384B丨微波信号发生器

——新利通仪器仪表—— M9384B丨微波信号发生器 M9384B VXG 是是德科技首款能够生成高达 44 GHz 信号的双通道微波信号发生器。 性能可靠&#xff0c;通用测试功能 特点 XLT 宽广的射频带宽&#xff08;2 GHz&#xff09; 大输出功率可以对系统损耗进行补偿&#xff0c;…

期末复习-计算机网络

目录 第五章&#xff1a;运输层 1.运输层协议概述&#xff08;进程之间的通信&#xff0c;运输层的端口&#xff09; 2.用户数据报协议 UDP&#xff08;特点、首部格式&#xff09; 3.传输控制协议 TCP&#xff08;特点、套接字、可靠传输的工作原理、首部格式&#xff09; …

艾体宝案例丨CircleCI 助力 ANA Systems 打造高效 CI/CD 模型

在现代软件开发领域&#xff0c;效率和可靠性是企业在竞争中取胜的关键。本文将深入探讨 ANA Systems 如何通过引入业界领先的 CI/CD 平台——CircleCI&#xff0c;克服传统开发流程的瓶颈&#xff0c;实现开发运营效率的全面提升。同时&#xff0c;本文还将详细解析 CircleCI …

RabbitMQ个人理解与基本使用

目录 一. 作用&#xff1a; 二. RabbitMQ的5中队列模式&#xff1a; 1. 简单模式 2. Work模式 3. 发布/订阅模式 4. 路由模式 5. 主题模式 三. 消息持久化&#xff1a; 消息过期时间 ACK应答 四. 同步接收和异步接收&#xff1a; 应用场景 五. 基本使用 &#xff…

12.13 深度学习-卷积的注意力机制通道注意力SKNet

# **Selective Kernel Networks** 可选择的 卷积核尺寸 # SK是对SE的改进版&#xff0c;可以动态调整感受野大小 import torch import os import torch.nn as nn from torchvision.models import resnet18,ResNet18_Weights from torchvision.models.resnet import _res…

在 Docker 容器内运行 MySQL 并执行 SQL 脚本文件

在 Docker 容器内运行 MySQL 并执行 SQL 脚本文件&#xff08;如 cube_admin.sql&#xff09;&#xff0c;可以通过几种方式实现。以下是一种常见的方法&#xff0c;假设已经将 SQL 脚本文件 cube_admin.sql 放置在容器可以访问的位置&#xff08;例如&#xff0c;通过 Docker …