Cho hỏi cách giải 1 bài tập Đệ quy Pascal chút xíu: Lập trình tính tổng n số dương lẻ đầu tiên (n nhập từ bàn phím)
Mã: function Tong(n:integer):integer begin if(n mod 2 =0) then n:=n-1; if(n=1) then Tong:=1 else Tong:=n+Tong(n-2); end
Đề là tìm số lớn nhất trong 3 số nhập vào: Mã: #include <stdio.h> #include <conio.h> main() { int a,b,c,max; printf ("nhap vao 3 so tuy y :"); scanf ("%d%d%d",&a,&b,&c); max=a; if (max<b) max=b; if (max<c) max=c; printf ("so lon nhat la %d",max); getch(); } Bạn nào có thể giải thích giúp mình đc ko Mình ko hỉu từ cái chỗ max=a; khai biến ở trên thì max với a đều là biến vậy biến có thể gán cho biến đc ạh ? Nếu đc thì ở phần if (max<b) tại sao ko là if (a<b) mà fai gán max=a rồi cho vào lệnh if ? Thks nhìu hen
a ở đây đã có giá trị trước rồi, vì thế max được hiểu là gán cho 1 số bạn không hiểu rõ bản chất của bài toán tìm max n (ở đây n=3) số rồi là thế này: đầu tiên gán max cho 1 số bất kỳ nào đó trong n (=3) số, ở đây là a (nghĩa là giả sử a là số lớn nhất) sau đó so sánh số đó (a) với 1 số bất kỳ trong các số còn lại, ở đây là b nếu a<b thì cập nhật cho max giá trị là b, a bây giờ không còn là max nữa còn nếu a>b thì a vẫn là số lớn nhất (do đã giả sử ở lúc đầu), giá trị của max lúc này vẫn là a cứ tiếp tụ như thế cho đến số cuối cùng
Cho em hỏi 1 chút , em dùng phần mềm fraps 2.9.2 để làm một đoạn film minh họa cho skill trong Warcraft , nhưng sau khi cắt thì nó lại là video full screen , có phần mềm nào giúp cắt bớt các phần thừa trong video không ??? em chỉ muốn lấy phần hero thôi
Mấy anh cho em hỏi câu này: Đề bài : nhập vào 1 số kiểm tra xem nó có fai là số nguyên tố hay ko ? Mã: #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <math.h> main() { int i,n,x,f; printf ("nhap vao so can kiem tra :"); scanf ("%d",&n); x=sqrt(n); for (i=2;i<=x;i=i+1) if (n%i==0) f=0; if (f==0) printf ("ko la so nguyen to"); else printf (" la so nguyen to"); getch(); } Ở đoạn : Mã: for (i=2;i<=x;i=i+1) if (n%i==0) f=0; Theo em học thì cấu trúc for là : for (bt1;bt2;bt3) <khối lệnh> ( nếu có 2 lệnh trở lên thì đặt trong dấu {...} ) Vậy ở cái khúc nhỏ trên Mã: if (n%i==0) f=0; là lệnh của for hay chỉ if thôi ạh, nếu chỉ if là lệnh thì theo cấu trúc nó thiếu dấu ; .Còn nếu cả if (...) và f=0 là khối lệnh thì nó lại thiếu dấu {....} Ai giải thích dùm em chỗ này với.
lệnh ấy là của lệnh if nếu sau if chỉ có 1 lệnh thì không cần cho vào {...} tương tự với for , else.....nói chung câu lệnh cấu trúc điều khiển sau đó chỉ muốn làm 1 lệnh thì không cần cho vào dấu {....}
Mã: for (i=2;i<=x;i=i+1) if (n%i==0) f=0; tương đương Mã: for (i=2;i<=x;i=i+1) { if (n%i==0) { f=0; } } if(...)f=0; được tính là 1 câu lệnh trong scope của vòng lặp for, f=0 được tính là 1 lệnh trong scope của if(...) edit: vd viết như thế này cũng là hợp lệ Mã: for(.....) if(...) { //câu lệnh 1; //... //câu lệnh n; }
Cấu trúc mà bạn đề cập tất nhiên là áp dụng cho khối lệnh, 1 lệnh sau for(hay if) thì không cần {...}. Theo như trên chỗ tôi đánh dấu có nghĩa là lệnh for chỉ lặp trên 1 lệnh if (không cần {...} cho lệnh for), lệnh if chỉ có 1 dòng gán f=0; nên cũng không cần {...}. Thân
sao đa số người ta chỉ hỏi c++ ko vậy ta, tôi thì muốn xin 1 đoạn code bằng c# dùng để mở file notepad apllycation exe. lúc trước có thằng bạn cùng lớp nó gửi tôi 1 file exe mở lên thì nó mở hàng loạt file notepad lên, dc 1 lút sau thì treo máy, hỏi nó thì nó nói viết bằng c# chỉ với vài dòng lệnh chứ ko phải do virus, tui ngồi làm hoài mà vẫn ko làm dc như nó ai biết xin chỉ giùm cám ơn nhiều thanks
using System.Diagnostics; string str = @"C:\windows\system32\notepad.exe; Process process = new Process(); process.StartInfo.FileName = str; process.Start(); -> chạy vòng lặp vô hạn thì edit: cái này viết = notepad cũng được chứ ko cần viết = c#, máy victim ko có .net framework thì ...
ai chỉ mình cái hướng để viết hàm chia 2 đa thức với ::( đa thức a : a1x + a2x^2 + a3x^3 +... đa thức b : b1x + b2x^2 +b2x^3 + .... chỉ mình cái hướng đi với
lấy anx^n chia cho bmx^m, kết quả ra là a/bx^(n-m), cập nhật nó vào chuỗi đa thức kết quả d. lấy a/bx^(n-m) nhân cho bmx^m, ra một chuỗi đa thức, cụ thể cnx^n+c(n-1)x^(n-1)+.... Lấy chuỗi đa thức a trừ cho chuỗi đa thức c theo dạng (an-cn)x^n+(a(n-1)-c(n-1))x^(n-1)+...+(a1-c1)x. cập nhật đa thức này trở thành đa thức a ban đầu và lặp lại công việc trên cho đến khi n<m; lúc này đa thức d là đa thức thương, đa thức a cuối cùng là đa thức dư. Ai biết C# chỉ giùm mình cách tính thời gian thực hiện 1 bài toán với, cụ thể là khoảng thời gian lúc bắt đầu chương trình tới lúc kết thúc. C# quá nhiều hàm mình không hiểu ::(
Lúc Form_Load cậu gán DateTime.Now(); cho 1 biến Start, lúc kết thúc (Form_Closed) cậu gán nó cho biến End, ghi vào file log (End - Start) là biết được
Error 1 'System.DateTime.Now' is a 'property' but is used like a 'method' Mình xài thì bị lỗi như vầy
cái đó mình viết mã giả thôi không có () đâu, cậu tìm hiểu thêm trên MSDN đi edit: http://msdn.microsoft.com/en-us/library/system.datetime.ticks.aspx
kì lạ nhĩ có phần không hiểu: Giả sử để tính thời gian thực hiện bài toán tính giai thừa của 1 số đi bằng hàm tính GiaiThua().Lúc form load gán biến Start=DataTime.Now(), lúc đóng form gán tiếp End=DataTime.Now(); Một số trường hợp sau đây không hiểu: 1>Hàm GiaiThua() được gọi ờ biến cố nào. Form_Load hay Form_Closed 1.1>Nếu ờ F_L thì nó khi load form lên nó đâu có tính đúng thời gian lúc chạy cái hàm vì nó còn làm nhiều việc khác như khời động chế độ đồ họa đễ vẽ form và một chục cái hàm khác sau đó mới gọi cái datatime rùi cái hàm giai thừa cần tính là gọi sau cùng, sau đó trả lại tài nguyên rùi thực hiện hàm đóng from. Vậy thời gian tính ra lúc này sẽ là: Mã: Thời Gian=Thời gian lấy kết quả trả về hàm DataTime gán cho Start + Thời gian dời stack để gọi hàm GiaiThua() + thời gian trả tài nguyên + thời gian lấy giá trị trả về DataTime gán lại cho End. 1.2>Lập luận tuơng tự cho phần hàm GiaiThua gọi ờ Form_Close < tức nhiên Start và end nó bọc cái hàm giai thừa ờ giữa va cùng ờ trong F_C 1.3>1 cái hàm khi chạy còn nhiều yêu tố khác, gần như việc kiểm thử là ko chính xác. 2> còn nếu bài toán là yêu cầu tính thời gian sử dụng cái form đến lúcn ó bị đóng thì đúng như bạn nói ờ trên . ___________Auto Merge________________ . cần thay cái @"C:\windows\system32\notepad.exe" bằng @"%systemroot%\%system32\notepad.exe"