黑马程序员技术交流社区

标题: 本人基础太差,想了差不多两个小时都想不出来,求详细的解答啊 [打印本页]

作者: ccsd999    时间: 2015-4-23 22:25
标题: 本人基础太差,想了差不多两个小时都想不出来,求详细的解答啊
  已知函数:

y=    x+3              0              x的2次幂         
    (x>0)      (x=0)               ( x<0)
请设计一个方法实现上面的函数,根据传入的值x的不同,返回对应y的值,
1,定义个static修饰符修饰的方法,方法接收一个int类型的参数x,返回值为int类型,
2,在方法中使用if语句针对x的值进行三种情况的判断。
3,根据判断结果分别执行不同的表达式,并将结果赋予变量y,
4,在方法最后返回y的值。
5,在main方法中调用设计好的方法,传入一个int类型的值。将方法的返回值打印。
作者: shield    时间: 2015-4-23 22:31
  1. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 //System.out.println("Hello World!");
  6.                 int x = -4;
  7.                 int y = function(x);
  8.                 System.out.println(y);
  9.         }
  10.         public static int function(int x)
  11.         {
  12.                 if(x>0)
  13.                         return x*x;
  14.                
  15.                 if(x<0)
  16.                         return x+3;
  17.                
  18.                 return 0;
  19.         }
  20. }
复制代码

作者: sunyue    时间: 2015-4-23 22:51
  1. package practice;

  2. public class exercise15 {

  3.         public static void main(String[] args) {
  4.                
  5.                 System.out.print(fun(8));
  6.                
  7.         }
  8.        
  9.         static int fun(int x){
  10.                 int y=0;
  11.                 if(x>0)  y = x+3;
  12.                 if(x<0)  y = x^2;
  13.                 return y;
  14.                
  15.         }

  16. }
复制代码

作者: ccsd999    时间: 2015-4-23 22:51
shield 发表于 2015-4-23 22:31

能做好注释吗?看不懂啊
作者: shield    时间: 2015-4-23 23:04
  1. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 //System.out.println("Hello World!");
  6.                 int x = -4;
  7.                 int y = function(x);//function函数返回int型  赋值给y
  8.                 System.out.println(y);
  9.         }
  10.         public static int function(int x)
  11.         {
  12.                 if(x>0)
  13.                         return x*x; //如果x>0 返回x*x
  14.                
  15.                 if(x<0)
  16.                         return x+3; //如果 x<0 返回x+3
  17.                
  18.                 return 0; //不大于零也不小于零 返回零
  19.         }
  20. }
复制代码


不知道你哪一行看不懂,看看我能不能帮你。
作者: duzhi409    时间: 2015-4-23 23:41
class  Demo
{
   
        static int  y;

     public static int method(int x)
        {
            if(x>0)
                {
                        return y=x+3;
                }

                else if(x==0)
                {
                    return y=0;
                }
                else
                {
                        return y=x^2;
                }

         }
         public static void main(String[] args)
        {
                Demo .method();
                System.out.println("y="+y);
    }
}

我也是小白一个,写的也不太好,楼主见谅
作者: ruibocool    时间: 2015-4-24 02:48
public class Funtiontest {

        public static void main(String[] args) {
                // TODO Auto-generated method stub
                int x=5;
                int y=funtion(x);
                System.out.println(y);
        }
        public static int funtion(int x){
                int y;
                if(x>0){
                        y=x+3;
                        return y;
                }
                if(x==0){
                        y=0;
                        return y;
                }
                else {
                        y=x*x;
                        return y;}
               
               
        }

}

作者: rose_xiaomei    时间: 2015-4-24 03:40
一楼正解,这题就是if else语句跟方法中参数的传递问题,方法中返回一个int 类型的值,调用的时候就用int类型的变量接收。
作者: 莫里亚蒂    时间: 2015-4-24 07:15
class Test1
{
        public static void main(String[] args)
        {
                int x = 8;
                int y = add(x);
                System.out.println(y);
        }
        public static int add(int x)
        {
                if(x>0)
                        return x*x;
               
                if(x<0)
                        return x+3;
               
                return 0;
        }
}
作者: Demomiku    时间: 2015-4-24 08:24

  1. public class Demo
  2. {

  3.         public static void main(String[] args)
  4.         {
  5.                 //在main方法中调用设计好的方法,传入一个int类型的值。将方法的返回值打印。
  6.                 int y = func(3);
  7.                 System.out.printf("y = " + y);
  8.         }

  9.         //定义个static修饰符修饰的方法,方法接收一个int类型的参数x,返回值为int类型
  10.         public static int func(int x)
  11.         {
  12.                 int y = 0;
  13.                
  14.                 //在方法中使用if语句针对x的值进行三种情况的判断,根据判断结果分别执行不同的表达式,并将结果赋予变量y,
  15.                 if(x > 0)
  16.                         y = x + 3;
  17.                 else if(x == 0)
  18.                         y = 0;
  19.                 else if(x < 0)
  20.                         y = x * x;
  21.                
  22.                 //在方法最后返回y的值。
  23.                 return y;
  24.         }
  25. }
复制代码

作者: ccsd999    时间: 2015-4-25 21:05
shield 发表于 2015-4-23 22:31

谢谢啊,虽然看不怎么懂,呵呵
作者: ccsd999    时间: 2015-4-25 21:06
莫里亚蒂 发表于 2015-4-24 07:15
class Test1
{
        public static void main(String[] args)

谢谢啊,虽然看不怎么懂,呵呵
作者: ccsd999    时间: 2015-4-25 21:07
Demomiku 发表于 2015-4-24 08:24

谢谢啊,虽然看不怎么懂,呵呵
作者: ccsd999    时间: 2015-4-25 21:08
ruibocool 发表于 2015-4-24 02:48
public class Funtiontest {

        public static void main(String[] args) {

谢谢啊,虽然看不怎么懂,呵呵
作者: 王英明    时间: 2015-4-25 21:09
没看懂啊!
作者: ccsd999    时间: 2015-4-25 21:10
莫里亚蒂 发表于 2015-4-24 07:15
class Test1
{
        public static void main(String[] args)

谢谢啊,虽然看不怎么懂,呵呵
作者: ccsd999    时间: 2015-4-25 21:11
ruibocool 发表于 2015-4-24 02:48
public class Funtiontest {

        public static void main(String[] args) {

谢谢啊,虽然看不怎么懂,呵呵
作者: xuelanghu120    时间: 2015-4-25 21:16
在上几天课就可以了
作者: wangyu    时间: 2015-4-25 21:18
你这18分是怎么来的
作者: 上善若水_Wx    时间: 2015-4-25 21:37
我也是,多看视屏,多敲代码中~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2