30/09/2018, 17:47

Bài này em mới code chia sẻ anh em thảo luận thử có cách nào hay hơn không,ở đây em sử dụng hàm

Tìm số lớn/nhỏ nhất trong 3 số.

#include <iostream>
using namespace std;
int maximum(int x,int y,int z);
int minnimum(int x,int y,int z);
int main()
{
	int x,y,z;
	cout << "Nhap x,y,z = ";
	cin >> x >> y >> z;
	cout << "so lon nhat trong 3 so la : " << maximum(x,y,z) << endl;
	cout << "so nho nhat trong 3 so la : " << minnimum(x,y,z) << endl;
	return 0;
}
int maximum(int x,int y,int z)
{
	int max =x;
	if(max < y)
		max =y;
	if(max < z)
		max=z;
	return max;
}
int minnimum(int x,int y,int z)
{
	int min=x;
	if(min > y)
		min=y;
	if(min > z)
		min =z;
	return min;
}`indent preformatted text by 4 spaces`

*grab popcorn* viết 19:50 ngày 30/09/2018

Dùng cái này để code rõ hơn đi bạn

Làm sao để có thể hiển thị syntax highlighting bằng markdown? Các bạn phải đánh dấu ``` như ví dụ dưới đây Chú ý, dấu ``` được tạo ra bởi nút nằm bên trái số 1 trên bàn phím, nút này sẽ là ~ khi bấm giữ Shift Ví dụ cho C Nội dung: ``` void main() { } ``` Và đừng quên ``` ở cuối Kết quả void main() { } Ví dụ cho Pascal Nội dung: ``` Program HelloWorld; Begin WriteLn('Hello world!') {no ";" is required after the last statement of a block - adding one adds a "null stateme…

TTmagic viết 19:54 ngày 30/09/2018

cả kỳ học C++ mình biết mỗi như này

int max(int a, int b){
return a>b?a:b;
}
int min(int a,int b){
return a<b?a:b;
}

--- main---
int max = max(a,max(b,c));
int min = min(a,min(b,c));
.vn viết 19:53 ngày 30/09/2018

Kiểu bác so sánh chỉ làm những chương trình đơn giản thôi, chứ chương trình lớn cần chia thành nhiều thành phần nhỏ viết cách đó chắc chết đó bác , dù sao đây cũng là một ý kiến hay… thanks bác…

TTmagic viết 19:51 ngày 30/09/2018

vậy so sánh 4 số bạn lại viết thêm 2 hàm min max cho 4 số nữa hả

.vn viết 19:57 ngày 30/09/2018

không bác ơi mình thêm vào một biến là đưucọ mà bác,(int x,int y,intz,int…). vậy thôi, hàm min và hàm max là không thêm gì hết … gọn

TTmagic viết 19:59 ngày 30/09/2018

không bác ơi mình thêm vào một biến là đưucọ mà bác,(int x,int y,intz,int…). vậy thôi, hàm min và hàm max là không thêm gì hết … gọn

bác thử làm vậy xem được ko

Hàm thì vẫn có 3 tham số mà ở main lại truyền 4 tham số vào á

.vn viết 19:49 ngày 30/09/2018

#include
using namespace std;
int maximum(int x,int y,int z,int t);
int minnimum(int x,int y,int z,int t);
int main()
{
int x,y,z,t;
cout << "Nhap x,y,z,t = ";
cin >> x >> y >> z>>t;
cout << "so lon nhat trong 4 so la : " << maximum(x,y,z,t) << endl;
cout << "so nho nhat trong 4 so la : " << minnimum(x,y,z,t) << endl;
return 0;
}
int maximum(int x,int y,int z,int t)
{
int max =x;
if(max < y)
max =y;
if(max < z)
max=z;
if(max < t)
max=t;
return max;
}
int minnimum(int x,int y,int z,int t)
{
int min=x;
if(min > y)
min=y;
if(min > z)
min =z;
if(min > t)
min=t;
return min;
}

*grab popcorn* viết 19:51 ngày 30/09/2018

Bác phải rewrite lại code rồi
Thế lỡ như 1 ct đòi hỏi tìm max,min 2,3,4 số thì sao?
Như @TTmagic là ngon rồi.
Tức chỉ cần code max min của 2 số.
Rồi từ đó tìm max, min n số cũng đc mà ko cần rewrite code. hay thêm function :")

... viết 20:01 ngày 30/09/2018

http://www.cplusplus.com/reference/cstdarg/va_arg/

Bạn tìm hiểu list variable argument có thể đáp ứng đc phần nào.

.vn viết 19:56 ngày 30/09/2018

cám ơn các bác … nói chung có nhiều cách… minh sử dụng hàm biết là chương trình sẽ nặng và chạy lâu , mình nghĩ mình sẽ dùng mảng là nhanh nhất … thanks các bác rất nhiều…

Minh Hoàng viết 19:50 ngày 30/09/2018

Bao nhiêu tham số cũng cân được hết

STDIO

Xây Dựng Hàm Có Tham Số Tuỳ Ý Trong C :: Bài viết :: STDIO

Trong một số trường hợp, chúng ta cần truyền vào hàm một vài tham số mà chưa biết trước được số lượng. Giải pháp thông thường là đưa các phần tử đó vào một mảng hoặc một cấu trúc nào đó và truyền vào hàm. Tuy nhiên có một cách giúp cho chương trình...


kết hợp DEFINE cho gọn

#define max2(a,b) ((a>b)?a:b)
#define max3(a,b,c) (max2(max2(a,b),c))

cẩn thận hơn thì phải thế này:

#define max2(a,b) (((a)>(b))?(a):(b))
#define max3(a,b,c) (max2(max2((a),(b)),(c)))

thank anh @ltd

Mai Anh Dũng viết 20:00 ngày 30/09/2018

Define như thế bị lỗi đó Hoàng. Em bọc biến trong define lại bằng () đi

Bài liên quan
0