抱歉,我认为这是非常基本的,但我想知道是否有人可以告诉我为什么这些IF语句似乎只有 1 个运行。“CASH”选项的第三个IF语句有效,但不幸的是,其他 2 个语句无效。
Sub HideUnhide_Discount()
If Range("Payment_Option") = "Subscription" Then
Range("MnthD_Row").EntireRow.Hidden = False
Range("MnthD").Value = 0
Else
Range("MnthD_Row").EntireRow.Hidden = True
End If
If Range("Payment_Option") = "Lease" Then
Range("OOD_Row").EntireRow.Hidden = False
Range("Leasing_Info").EntireRow.Hidden = False
Range("OOD").Value = 0
Else
Range("OOD_Row").EntireRow.Hidden = True
Range("Leasing_Info").EntireRow.Hidden = True
End If
If Range("Payment_Option") = "Cash" Then
Range("OOD_Row").EntireRow.Hidden = False
Range("MnthD_Row").EntireRow.Hidden = False
Range("OOD").Value = 0
Else
Range("OOD_Row").EntireRow.Hidden = True
Range("MnthD_Row").EntireRow.Hidden = True
End If
End Sub
Run Code Online (Sandbox Code Playgroud) 我创建了一个包含以下数据的数据框
name <- c("A","B","C","D","E","F","G","H","I","J")
age <- c(22,43,12,17,29,5,51,56,9,44)
sex <- c("M","F","M","M","M","F","F","M","F","F")
rock <- data.frame(name,age,sex,stringsAsFactors = TRUE)
rock
Run Code Online (Sandbox Code Playgroud)
现在我想找出:
如果名称是E到J且性别不等于F则状态为"1F",如果名称为A到D且年龄大于15,则状态为"年轻".其他一切都是"他人"
所以,我正在申请以下代码:
rock$status <- ifelse(rock$name==c("E","F","G","H","I","J")&
rock$sex!="F","1F",
ifelse(rock$name==c("E","F","G","H","I","J")&rock$sex=="F","Fenamle",
ifelse(rock$name==c("A","B","C","D") & rock$age>15,"Young","Others")))
rock
Run Code Online (Sandbox Code Playgroud)
但我得到的输出如下:
name age sex status
1 A 22 M Young
2 B 43 F Young
3 C 12 M Others
4 D 17 M Young
5 E 29 M Others
6 F 5 F Others
7 G 51 F Others
8 H 56 M Others
9 I 9 F Others
10 J …Run Code Online (Sandbox Code Playgroud) 基本上,我想获得两个数字之间的百分比差异,但前提是这些单元格中有数据/数字。
如果单元格中没有任何数据,我不希望公式运行,因为这会给我一个 div 错误。
if (task1 != null)
//Do something with task1
else
{
if (task2 != null)
//Do something with task2
else
{
if (task3 != null)
//Do something with task3
else
{
if (task4 != null)
//Do something with task4
}
}
}
Run Code Online (Sandbox Code Playgroud)
是否有上述代码的替代品?我正在寻找一种'奉承'的方式,在任务上的开关套管取决于哪些非空.
非常感谢任何可以提供帮助的人.
我想知道是否有人可以向我解释COBOL中嵌套IF语句中的点数.例:
*The first if statement*
IF SUCCESSFUL-STATUS
PERFORM 8300-REPL-LNNTBI00
THRU 8300-REPL-LNNTBI00-EXIT
*The second if statement*
IF SUCCESSFUL-STATUS
DISPLAY 'RECORD ALREADY UPDATED :' WS-INF-REC
ELSE
DISPLAY 'UPDATE ERROR : ' WS-INF-REC ' / '
WS-RETURN-STATUS
READ INFILE INTO WS-INF-REC.
Run Code Online (Sandbox Code Playgroud)
哪个if语句在"WS-INF-REC"之后放置的点是什么?第一个IF还是第二个IF-ELSE?我知道在大多数编程中,它应该是最后一个if语句,但只是为了确保,它对于COBOL是否相同?
我有这个嵌套的if else条件.我想要的检查流程在下面的代码中描述.
if (HiringManagerAPPROVED)
{
//email reporting gropu
}
else if (ReportingGroupAPPROVED)
{
//email Hiringmanager
}
else if (HiringManagerReAPPROVED)
{
//email PPO
} }
else if (PpoAPPROVED)
{
//email Finance
}
else if (FinanceAPPROVED)
{
//email president & COO
}
else if (PresidentCooAPPROVED)
{
//email hr
}
else if (HRAPPROVED)
{
//email Hiring Manager
}
Run Code Online (Sandbox Code Playgroud)
如何减少支票数量,保持支票流量不变.
我有一些包含嵌套if语句的代码:
if(numberOfNeighbors == 1){
//go through comparison again, add Pixel(i,j) to current linked list -> complist[numberOfComponents]
// break out of large check ??
if(ji.getPixelColor(i, j) == (ji.getPixelColor(i-1,j-1))){ //compare to top left
complist[numberOfComponents].addFirst(new Pixel(i,j,numberOfComponents)); break;
}
if(ji.getPixelColor(i, j) == (ji.getPixelColor(i,j-1))){ // compare to top
complist[numberOfComponents].addFirst(new Pixel(i,j,numberOfComponents)); break;
}
if(ji.getPixelColor(i, j) == (ji.getPixelColor(i+1,j-1))){ // compare to top right
complist[numberOfComponents].addFirst(new Pixel(i,j,numberOfComponents)); break;
}
if(ji.getPixelColor(i, j) == (ji.getPixelColor(i-1,j))){ // compare to left
complist[numberOfComponents].addFirst(new Pixel(i,j,numberOfComponents)); break;
}
} // end of if(numberOfNeighbors == 1)
Run Code Online (Sandbox Code Playgroud)
基本上我想做的事情,无论效率如何低,都是比较一下4次,但如果事实证明它是一个匹配,则突破4个嵌套if语句的集合,以及外部if语句. …
我做了一个密码检查程序,检查以下标准: -
至少应该有
就是这样.我没有给出任何下限.无论我给出什么输入(正确或不正确),程序都会给我与截图中附带的相同或类似的输出.
对于如: - ,Pratik10,pratik10,pratikten,pr@tiK10我得到的结果相同"Password is fine and valid".
为什么我的程序没有正确检查定义的条件?它甚至没有正确打印密码的计数器.
以下是我的代码:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#include <string.h>
int main()
{
char x[100];
int i;
int uc=0;
int lc=0;
int num=0;
int misc=0;
printf("enter your password\n");
scanf("%s",x);
for(i=0;i<100;i++) {
if (isalpha(x[i])) {
if (isupper(x[i])) {
uc++;
}
if (islower(x[i])) {
lc++;
}
}
if (isdigit(x[i])) {
num++;
} …Run Code Online (Sandbox Code Playgroud) 我写了一些以下代码.
#include "stdio.h"
int main(){
float t,res;
char c;
scanf("%f",&t);
getchar();
scanf("%s",&c);
if (c=='R') res = 4/5 * t;
else if (c=='F') res = (9/5 * t) + 32;
else if (c=='K') res = t + 273;
printf("%.2f",&res);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我给出t = 25和c ='R'时,我不知道为什么输出显示为0.00.控制台看起来像这样.
25
R
0.00
Run Code Online (Sandbox Code Playgroud)
有人会给我一个解释吗?
我有以下问题.我需要验证日期和时间,因此如果星期几是星期二或星期四,并且时间是2:00到3:00 PM ,则返回false .
我有两个选择:
if (appointmentRequest.getDateTime().getDayOfWeek() == DayOfWeek.TUESDAY
|| appointmentRequest.getDateTime().getDayOfWeek() == DayOfWeek.THURSDAY) {
if (appointmentRequest.getDateTime().getHour() == 2) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
选项2:
if ((appointmentRequest.getDateTime().getDayOfWeek() == DayOfWeek.TUESDAY
|| appointmentRequest.getDateTime().getDayOfWeek() == DayOfWeek.THURSDAY)
&& (appointmentRequest.getDateTime().getHour() == 2)) {
return false;
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,最佳做法是什么?