求教我这道java题目怎么写
这道题是需要。。随机出来一个数是(1到200之间)。。这个数不能是7的倍数,而且个位数也没有7,十位数也不能有7请详细的代码。。越详细越好。。都告诉我理念。。还有我对取余...
这道题是需要。。随机出来一个数是(1到200之间)。。这个数不能是7的倍数,而且个位数也没有7,十位数也不能有7
请详细的代码。。越详细越好。。都告诉我理念。。还有我对取余一直懵懵懂懂。。 展开
请详细的代码。。越详细越好。。都告诉我理念。。还有我对取余一直懵懵懂懂。。 展开
3个回答
展开全部
import java.util.Random;
public class Demo29 {
public static void main(String[] args) {
Random ra=new Random();//创建一个随机对象
int n=ra.nextInt(200)+1;//n为1到200之间的随机
//当N是个位数
if(n<10){
//个位不是7肯定就不是7的倍数
if(n!=7){
System.out.println(n);
}
}
//当N不是个位数(意味着同时存在个位和十位)
else {
//当n的个位(n%10)不是7,且n的十位(n/10%10)不是7,且n不能被7整除
if((n%10!=7)&&(n/10%10!=7)&&(n%7!=0)){
System.out.println(n);
}
}
}
}
ps:取余很好理解的,比如一个数n(12345),他的个位是n%10(5),他的十位是n/10%10(12345/10=1234,1234%10=4) ),他的百位是n/100%10(12345/100=123,123%10=3),依此类推
public class Demo29 {
public static void main(String[] args) {
Random ra=new Random();//创建一个随机对象
int n=ra.nextInt(200)+1;//n为1到200之间的随机
//当N是个位数
if(n<10){
//个位不是7肯定就不是7的倍数
if(n!=7){
System.out.println(n);
}
}
//当N不是个位数(意味着同时存在个位和十位)
else {
//当n的个位(n%10)不是7,且n的十位(n/10%10)不是7,且n不能被7整除
if((n%10!=7)&&(n/10%10!=7)&&(n%7!=0)){
System.out.println(n);
}
}
}
}
ps:取余很好理解的,比如一个数n(12345),他的个位是n%10(5),他的十位是n/10%10(12345/10=1234,1234%10=4) ),他的百位是n/100%10(12345/100=123,123%10=3),依此类推
展开全部
import java.util.Random;
public class Test {
public static void main(String[] args) {
int number;
Random rand = new Random();
do{
number = rand.nextInt(200) + 1;//nextInt(200)产生0<<value<200,要1~200,需要+1
boolean isDivideBy7 = (number % 7 == 0); //被7整除?
boolean isLastDigit7 = (number % 10 == 7); //个位为7?
boolean isTenDigit7 = (number % 100 / 10 == 7);//十位为7么?
if(!isDivideBy7 && !isLastDigit7 && !isTenDigit7){
break;
}
}while(true);
System.out.println("随机数" + number + "不能被7整除,个位十位均不为7");
}
}
public class Test {
public static void main(String[] args) {
int number;
Random rand = new Random();
do{
number = rand.nextInt(200) + 1;//nextInt(200)产生0<<value<200,要1~200,需要+1
boolean isDivideBy7 = (number % 7 == 0); //被7整除?
boolean isLastDigit7 = (number % 10 == 7); //个位为7?
boolean isTenDigit7 = (number % 100 / 10 == 7);//十位为7么?
if(!isDivideBy7 && !isLastDigit7 && !isTenDigit7){
break;
}
}while(true);
System.out.println("随机数" + number + "不能被7整除,个位十位均不为7");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.util.Random;
public class Funy {
public static void main(String[] args) {
Random ra=new Random();//创建一个随机对象
int n=ra.nextInt(200)+1;//n为1到200之间的随机
String str=n+"";//变成字符串
for(char x:str.toArray())//把每一位的数字提取出来成为一个字符数组,然后 遍历这个数组,有跟'7';相同的就排除
{
if(x=='7')
{
System.out.println("这个数不符合要求");
break;
}
}
public class Funy {
public static void main(String[] args) {
Random ra=new Random();//创建一个随机对象
int n=ra.nextInt(200)+1;//n为1到200之间的随机
String str=n+"";//变成字符串
for(char x:str.toArray())//把每一位的数字提取出来成为一个字符数组,然后 遍历这个数组,有跟'7';相同的就排除
{
if(x=='7')
{
System.out.println("这个数不符合要求");
break;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询