CNTT4A2 COMMUNITY

Thảo luận học tập


You are not connected. Please login or register

Chuyển đến trang : 1, 2  Next

Go downThông điệp [Trang 1 trong tổng số 2 trang]

26/8/2011, 2:25 am
doc2v
doc2v

Cho biểu thức: S = 1 + 1/2 + 1/3 + ....1/n
Yêu cầu: Viết chương trình nhập n từ bàn phím.
In ra giá trị của S.
Đề nghị viết chương trình hoàn chỉnh nhé.
Có phải treo giải bài này không nhỉ?
P/S: Có thể sử dụng bất kỳ ngôn ngữ lập trình nào: Pascal, C, C++, Java, C#, VB.net....

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà doc2v
26/8/2011, 5:53 am
whatsltd4us
whatsltd4us


#include<iostream.h>
#include<conio.h>

float cong(int n)
{
if (n==1)
return 1;
if (n>1)
return cong(n-1)+1./n;
}

void main()
{
int n;
cout<<"Nhap n = ";
cin>>n;
cout<<"Tong = "<<cong(n);
getch();
}

Cách hay dùng là ta sử dụng câu lệnh for

Theo em ở bài toán này cái mình cần quan tâm nhất là phép 1/n , vì n nguyên nên nếu không thực hiện ép kiểu sẽ không có được kết quả mong muốn.

http://vdvinh-nd.blogspot.com

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà whatsltd4us
26/8/2011, 8:21 am
doc2v
doc2v

Đề nghị đọc kỹ đầu bài để hiểu ý đồ của đầu bài nhé!
Smiles!

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà doc2v
26/8/2011, 2:06 pm
Google
Google

08

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Google
26/8/2011, 9:06 pm
whatsltd4us
whatsltd4us

doc2v đã viết:Đề nghị đọc kỹ đầu bài để hiểu ý đồ của đầu bài nhé!
Smiles!

Hic, vẫn chưa hiểu được ý của thầy
http://vdvinh-nd.blogspot.com

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà whatsltd4us
26/8/2011, 9:51 pm
doc2v
doc2v

Để làm bài kiểm tra thì bài toán ấy quá dễ, đúng không? Tôi cố tình đưa ra vậy để các em hiểu rằng làm một bài toán hoàn chỉnh thì không dễ chút nào.
Muốn kiểm tra kỹ năng các em trong kỹ thuật lập trình như: kỹ năng viết giải thuật, kỹ năng bắt lỗi...
Đầu bài chỉ nói là nhập a, nếu tôi nhập a = 15.2 thì sao, và tệ hơn nữa nếu tôi nhập a = 'x' có được không?
Khi viết chương trình thì cần phải hiểu là mình viết cho ai, ai là người sử dụng chương trình thì sẽ hiểu việc bắt lỗi là vấn đề rất quan trọng.
Cố gắng nhé!
Smiles!

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà doc2v
26/8/2011, 10:11 pm
Real_life
Real_life

Bây giờ thì em mới hiểu... 21
http://vn.360plus.yahoo.com/tranduyen_2006

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Real_life
26/8/2011, 10:22 pm
kienhl
kienhl

sử dụng try...catch để bẫy lỗi được không nhỉ 16 , năm ngoái học chưa được dạy kỹ về phần này lắm! 95
http://tin4a2uneti.tk

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kienhl
27/8/2011, 12:04 am
√ô†ìñҺ▪№¹
√ô†ìñҺ▪№¹

=)). E vẫn chưa hiểu

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà √ô†ìñҺ▪№¹
27/8/2011, 6:09 am
whatsltd4us
whatsltd4us

doc2v đã viết:Để làm bài kiểm tra thì bài toán ấy quá dễ, đúng không? Tôi cố tình đưa ra vậy để các em hiểu rằng làm một bài toán hoàn chỉnh thì không dễ chút nào.
Muốn kiểm tra kỹ năng caccs em trong kỹ thuật lập trình như: kỹ năng viết giải thuật, kỹ năng bắt lỗi...
Đầu bài chỉ nói là nhập a, nếu tôi nhập a = 15.2 thì sao, và tệ hơn nữa nếu tôi nhập a = 'x' có được không?
Khi viết chương trình thì cầnphair hiểu là mình viết cho ai, ai là người sử dụng chương trình thì việc bắt lỗi là vấn đề rất quan trọng.
Cố gắng nhé!
Smiles!

S=1+1/2+1/3+...+1/n
Nên n là số nguyên dương.
Nếu mình nhập là số âm, hoặc kí tự, chương trình sẽ báo lỗi.
Tuy nhiên không hiểu sao nhập n là số thực vẫn ra kết quả bình thường
VD: n=14; S=3.25156
n=14.5; S=3.25156 ?
Chẳng lẽ phải dùng 1 câu lệnh kiểm tra n có nguyên không ( VD : n==int(n))
Nhưng n để kiểu nguyên rồi mà, cái này là do NNLT hay do trình biên dịch.
Mong thầy hướng dẫn thêm.
http://vdvinh-nd.blogspot.com

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà whatsltd4us
27/8/2011, 7:36 am
kienhl
kienhl

Anh đọc lại thêm phần bẫy lỗi ấy, trình biên dịch một vài cái nó vẫn lỗi, như trong chương trình em viết năm ngoái ấy, chạy trên c-free đc nhưng trong turbo c++ vẫn lỗi 09
http://tin4a2uneti.tk

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kienhl
27/8/2011, 9:48 am
doc2v
doc2v

- Tất nhiên là về nguyên lý, với mỗi ngôn ngữ sẽ có cú pháp và chức năng câu lệnh khác nhau.
Ở đây C++ và C free không phải đã đồng nhất như nhau (vì nếu đồng nhất như nhau thì nó xây dựng lên C-free làm gì cho mất công) nên có thể câu lệnh này nó chính xác trong môi trường này nhưng sẽ không chính xác trong môi trường khác.
- Việc bẫy lỗi thì trong C++ đã nói rõ: lỗi do nhập dữ liệu, lỗi do đọc file...các em nên đọc lại vì các ngôn ngữ lập trình bậc cao sau này đều cần quan tâm đến vấn đề này.
- Bạn whatsltd4us đã kiểm tra n= 14 và n=14.5 thì vẫn ra chung 1 kết quả và không báo lỗi, tôi để các bạn thử tự mình kiểm tra và lý giải nhé. Lý giải được tức là đã hiểu một phần về lưu trữ các kiểu dữ liệu và việc chuyển đổi kiểu trong C++ rồi đấy.
Nghiên cứu và cho kết quả nhé!
Smiles!

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà doc2v
28/8/2011, 12:28 am
whatsltd4us
whatsltd4us

Thử với Code :
#include<iostream.h>
void main()
{
int a;
cout<<"Nhap a :";
cin>>a;
cout<<"KQ: a = "<<a<<"\n";
}


Nhap a :11b
KQ a = 11

Code chạy trên BC++ 4.5. Kết quả khá là bất ngờ, tiếp tục thử với các kiểu dữ liệu khác.
Không biết có cách nào xem cách thức sinh mã và biên dịch lệnh của BC++ 4.5 không nhỉ ?

http://vdvinh-nd.blogspot.com

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà whatsltd4us
28/8/2011, 6:43 am
zuizui
zuizui

#include<iostream.h>
#include<conio.h>
#include<math.h>
float cong(float n)
{
if(n==1)
return 1;
if(n>0)
return float(n-1)+1/n;
}

void main()
{
float n;
cout<<"Nhap n = ";
cin>>n;
cout<<"Tong = "<<cong(n);
getch();
}

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà zuizui
28/8/2011, 6:48 am
zuizui
zuizui

theo em quan trong la o ep kieu

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà zuizui
29/8/2011, 10:58 am
vungoc
vungoc

Bạn nên đọc lại bài viết của đồng chí doc2v ở trên vì nếu nhập n = "x" thì sao, phải báo lỗi chứ?

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà vungoc
9/7/2012, 12:25 am
Google
Google

Đú đởn tý :D

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Google
9/7/2012, 12:27 am
Google
Google

[You must be registered and logged in to see this link.]
Google đã viết:<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>langman.biz</title>

<style>
code {
font-size: 30px;
}
</style>
</head>
<body>
<h1>Lap Trinh Tinh Tong sau</h1>
<code>
S = 1 + 1/2 + ... + 1/n
</code>
<div id="solution">
<div id="input">
n = <input type="text" id="n" />
</div>
<div id="process">
<input type="button" id="process" value="KQ"onclick="process();" />
</div>
<div id="output">
S = <input type="text" id="S" />
</div>
</div>
<script>
function cin(id_name) {
return document.getElementById(id_name).value;
}
function cout(id_name, value) {
document.getElementById(id_name).value = value;
}
function process(){
S = 0;
n = cin('n');
if(n==1) S=1;
for (i=1; i<n; i++) {
S = S + 1/i;
S = S +1/n ;
}
cout('S', S);
}
</script>
</body>
</html>
copy code vào 1 trang index.html.
save lại rùi tự sướng :D

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Google
9/7/2012, 1:33 pm
kaka
kaka

javascript gì mà dài thế kia.

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>tính tổng S= 1 +1/2 +1/3 +.. + 1/n</title>
<style type="text/css">
input[name="id"]
{
background:#0099FF;
color:#FF0000;
}
</style>
</head>
<body>
<script language="javascript">
var i,a,n,s;
function tinhtong()
{
n=prompt("nhập vào n= ","1");
if(n==1) {
alert("Tổng = 1 ");
}
else {
a=1;
for(i=2;i<=n;i++){
a=a + 1/i;
}
alert("tổng S= "+a);
}
}
</script>
<input type="button" name="id" value="tính Tổng" onClick="tinhtong()">
</body>
</html>

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kaka
10/7/2012, 6:50 am
kienhl
kienhl

Mấy chú tí tởn cho code web vào hả, nhưng có một số phần không cần thiết nên bỏ đi, để hàm hiển thị tốt tối thiểu dạng cơ bản trong web là được. bạn nào muốn có tài liệu học về php, asp.net thì có thể liên hệ mình, ghi cho cái đĩa nhé!
Mà ở code trên của google với kaka, viết bằng asp.net trên ngôn ngữ vb hoặc c# đơn giản hơn nhiều:))
http://tin4a2uneti.tk

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kienhl
12/7/2012, 11:14 am
Google
Google

[quote]javascript gì mà dài thế kia.
Mình không sài thẻ script. bạn có thấy mình có sài cái nào đâu.
Bạn tự tưởng tượng đấy chứ.
@Kiên HL.
Đề bài cho ngôn ngữ nào trả được.
Tài Liệu có thì send cho mình vs . :))

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Google
12/7/2012, 11:20 am
Google
Google

[You must be registered and logged in to see this link.]
kienhl đã viết:Mấy chú tí tởn cho code web vào hả, nhưng có một số phần không cần thiết nên bỏ đi, để hàm hiển thị tốt tối thiểu dạng cơ bản trong web là được. bạn nào muốn có tài liệu học về php, asp.net thì có thể liên hệ mình, ghi cho cái đĩa nhé!
Mà ở code trên của google với kaka, viết bằng asp.net trên ngôn ngữ vb hoặc c# đơn giản hơn nhiều:))

Ông viết đê. ở đấy mà Hô. lắm nhọt.

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Google
12/7/2012, 11:32 am
kienhl
kienhl

Các chú thick thì anh chiều thôi, mở giáo trình ra copy paste cái là xong!!!! 30
http://tin4a2uneti.tk

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kienhl
12/7/2012, 1:48 pm
kaka
kaka

vâng.Bọn em toàn copy và pase cả thôi

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà kaka
13/7/2012, 4:52 pm
Ice.Tea
Ice.Tea

Lỗi ở hàm tính của Google :
Code:
for (i=1; i<n; i++) {
S = S + 1/i;
S = S +1/n ;
}

Nếu để như vậy KQ sẽ sai !
Sửa lại :
Code:
for (i=1; i<=n; i++) {
S = S + 1/i;
}

//---------------------------------//

Lỗi nữa của ZuiZui nữa !
Code:

float cong(float n)
{
if(n==1)
return 1;
if(n>0)
return float(n-1)+1/n;
}

Sửa lại :


Code:

float cong(float n)
{
if(n==1)
return 1;
if(n>1)
return cong(n-1)+1/n;
}
http://manhtuan-leo.blogspot.com/

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Ice.Tea

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Sponsored content

Về Đầu TrangThông điệp [Trang 1 trong tổng số 2 trang]

Chuyển đến trang : 1, 2  Next

« Xem bài trước | Xem bài kế tiếp »

Bài viết mới cùng chuyên mục

      Quyền hạn của bạn:

      Bạn không có quyền trả lời bài viết