找到 34423 篇文章 关于编程

在 C++ 中检查点是否在椭圆内、外或椭圆上

Arnab Chakraborty
更新于 2019-10-22 06:42:15

686 次浏览

假设,给定一个椭圆(中心坐标 (h, k) 和长半轴 a,短半轴 b),还给定另一个点。我们必须找到该点是否在椭圆内。要解决它,我们必须针对给定点 (x, y) 求解以下方程。$$\frac{\left(x-h\right)^2}{a^2}+\frac{\left(y-k\right)^2}{b^2}\leq1$$如果结果小于 1,则该点在椭圆内,否则不在。示例 实时演示#include #include using namespace std; bool isInsideEllipse(int h, int k, int x, int y, int a, int b) {    int res = (pow((x - h), 2) / pow(a, 2)) + ... 阅读更多

在 C++ 中使用基数转换方法检查数字是否为 k 的幂

Arnab Chakraborty
更新于 2019-10-22 06:39:10

155 次浏览

这里我们将看到一个程序,如果给定一个数字,也给定另一个值 k,我们必须检查该数字是否为 k 的幂。但是我们必须执行基数转换方法来解决此问题。假设一个数字是 27,k = 3。然后通过基数转换方法,27 将为 10003。这里在更改基数后,如果只有数字 1 出现一次,而其他数字为 0,则该数字为 k 的幂。要解决此问题,我们将遵循以下步骤。步骤 −定义 flag := falsewhile number > ... 阅读更多

在 C++ 中检查数字是否为 8 的幂

Arnab Chakraborty
更新于 2019-10-22 06:32:41

415 次浏览

在本节中,我们将看到,如果一个数字是 8 的幂还是不是,使用一些更简单的方法。如果存在一个数字,例如 4096,则程序将返回 true,因为这是 8 的幂。诀窍很简单。我们将计算 log8(num)。如果这是一个整数,则 n 是 8 的幂。这里我们将使用 tranc(n) 函数来查找双精度值的最近整数。示例 实时演示#include #include using namespace std; bool isPowerOfEight(int n) {    double val = log(n)/log(8); //获取以 8 为底的 log n    return ... 阅读更多

在 C++ 中使用位运算符检查数字是正数、负数还是零

Arnab Chakraborty
更新于 2019-10-22 06:28:58

2K+ 次浏览

这里我们将检查一个数字是正数、负数还是零,使用位运算符。如果我们执行像 n >> 31 这样的移位,那么它会将每个负数转换为 -1,将其他每个数字转换为 0。如果我们执行 –n >> 31,则对于正数它将返回 -1。当我们对 0 执行时,则 n >> 31 和 –n >> 31 都返回 0。为此,我们将使用如下所示的另一个公式−1+(𝑛>>31)−(−𝑛>>31)因此现在,如果n 为负数:1 + (-1) – 0 = 0n 为正数:1 + 0 – (-1) = 2n 为 0: ... 阅读更多

在 C++ 中不求平方根的情况下检查数字是否为完全平方数

Arnab Chakraborty
更新于 2019-10-22 06:24:50

1K+ 次浏览

假设给定一个数字,我们必须检查该数字是否为完全平方数。我们不会使用平方根运算来检查它。假设有一个数字 1024,这是一个完全平方数,但 1000 不是完全平方数。逻辑很简单,我们必须遵循此算法才能获得结果。算法isPerfectSquare(n) −输入− 数字 n输出− true,如果数字是完全平方数,否则为 false开始    for i := 1, i2 ≤ n, i 增加 1:       if n 可被 i 整除,并且 n ... 阅读更多

在 C++ 中检查数字是否为回文数

Arnab Chakraborty
更新于 2019-10-22 06:53:53

610 次浏览

这里我们将看到如何检查一个数字是否为回文数。回文数在两个方向上都是相同的。例如,数字 12321 是回文数,但 12345 不是回文数。逻辑非常简单。我们必须反转数字,如果反转后的数字与实际数字相同,则该数字为回文数,否则不是。让我们看看算法以更好地了解。算法isPalindrome(n) −输入− 数字 n输出− true,如果数字是回文数,否则为 false开始    temp := n    rev := ... 阅读更多

在 C++ 中不使用 / 和 % 运算符检查数字是否为 5 的倍数

Arnab Chakraborty
更新于 2019-10-22 06:13:52

658 次浏览

这里我们将看到如何检查一个数字是否可以被 5 整除。一种简单的方法是,如果数字模 5 = 0,则该数字可以被 5 整除。但是这里我们不会使用 / 或 % 运算符。要检查一个数字是否可以被 5 整除,我们必须查看最后一个数字是 0 还是 5。如果是 0 或 5,则该数字可以被 5 整除,否则不能。这里我们也可以使用一些大数字作为字符串来进行检查。示例#include using namespace std; bool isDiv5(string num){    int ... 阅读更多

在 C++ 中检查数字是否为杂乱的

Arnab Chakraborty
更新于 2019-10-22 06:12:01

367 次浏览

这里我们将看到一个有趣的问题,以检查一个数字是否为杂乱的。如果每个数字的相邻数字最多相差 1,则称该数字为杂乱的。例如,数字 1223 是杂乱的,但 1256 不是杂乱的。要解决此问题,我们必须检查一个数字是否具有相差大于 1 的邻居。如果找到这样的数字,则返回 false,否则返回 true。示例 实时演示#include #include using namespace std; bool isJumbled(int number) {    if (number / 10 == 0) //对于一位数,它始终是 ... 阅读更多

在 C++ 中检查数字是否在给定的基数中

Arnab Chakraborty
更新于 2019-10-22 06:06:27

175 次浏览

假设,我们有一个数字字符串,我们必须找到该数字是否为给定基数 B?如果字符串为“101110”,b = 2,则程序将返回 true。如果字符串为“A8F”,基数为 16,则它将为 true。方法非常简单。如果所有字符都在给定基数的符号范围内,则返回 true,否则返回 false。示例 实时演示#include using namespace std; bool inGivenBase(string s, int base) {    if (base > 16) //程序最多可以处理基数 1       return false;       ... 阅读更多

在 C++ 中检查大小为 n 的给定数组是否可以表示 n 级 BST

Arnab Chakraborty
更新于 2019-10-21 14:31:49

52 次浏览

我们有一个数组 A,我们必须检查该数组是否可以表示具有 n 个级别的 BST。由于级别为,我们可以如下方式构建树。假设一个数字为 k,大于 k 的值移到右侧,小于 k 的值移到左侧。假设有两个列表:{50, 20, 9, 25, 10} 和 {50, 30, 20, 25, 10}第一个无效,但第二个有效。要检查这一点,我们可以创建 BST 并检查高度,否则使用基于数组的方法。该 ... 阅读更多

广告

© . All rights reserved.