求教我这道java题目怎么写

这道题是需要。。随机出来一个数是(1到200之间)。。这个数不能是7的倍数,而且个位数也没有7,十位数也不能有7请详细的代码。。越详细越好。。都告诉我理念。。还有我对取余... 这道题是需要。。随机出来一个数是(1到200之间)。。这个数不能是7的倍数,而且个位数也没有7,十位数也不能有7

请详细的代码。。越详细越好。。都告诉我理念。。还有我对取余一直懵懵懂懂。。
展开
 我来答
百度网友2f26f94bc
2012-03-18 · TA获得超过443个赞
知道答主
回答量:61
采纳率:0%
帮助的人:87.9万
展开全部
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),依此类推
flyingFish211
2012-03-18 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
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");
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dachuan66
2012-03-19 · TA获得超过142个赞
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:145万
展开全部
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;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式