Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Giúp em bài tập c#

19:25 17-10-2017 907 lượt xem 3 bình luận 10:34 19-10-2017

Viết chương trình yêu cầu người dùng nhập vào số nguyên dương n, sau đó in ra tổng các số nguyên dương (bắt đầu từ 1) lớn nhất có thể sao cho tổng này nhỏ hơn n
 

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
hnguyen đã bình luận 10:34 19-10-2017

Bạn đổi đoạn mã này: 

sum = val - 1;

sang đoạn mã sau: 

    for(int i = 0; i < val; i++)
    {
      sum += i;
      if(sum >= val)
      {
        sum -= i;
        break;
      }
    }

 

Trường Trong Trắng đã bình luận 22:54 18-10-2017

Em cảm ơn ạ!! "tổng các số nguyên dương (bắt đầu từ 1) lớn nhất có thể". là tổng trong khoảng 1 - n đó ạ

hnguyen đã bình luận 14:18 18-10-2017
using System;
class MainClass {
  public static void Main (string[] args) {

    int val = 0;
    bool isSuccess = false;
    
    while(!isSuccess)
    {
      Console.WriteLine("Input number :");
      var number = Console.ReadLine();
      isSuccess = int.TryParse(number.ToString(), out val);
      isSuccess = isSuccess && (val > 0);
    }
    
    int sum = 0;
    sum = val - 1;

    Console.WriteLine("Output: " + sum);
  }
}

Mình chưa hiểu rõ lắm về yêu cầu: "tổng các số nguyên dương (bắt đầu từ 1) lớn nhất có thể".

Nhưng nếu tìm số nguyên x < n lớn nhất có thể thì: x = 1 + (n-2);

Câu hỏi mới nhất