Hàm Pascal cho dãy số 123456789 (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ddung9a

Thành viên mới
Tham gia
9/6/14
Bài viết
17
Được thích
0
em có dãy số 123456789 . anh chị nào có hàm pascal chỉ giúp em với

em có tham khảo hướng dẫn của nncb2008 nhưng là 1+2+3+4+5+6+7+8+9

em cần là 1+2 =3, 2+3 = 5, 3+4=7... = 35791357 và kết quả cuối cùng ạ

 
Công thức
=SUMPRODUCT(RIGHT(MID(F1,ROW(1:8),1)+MID(F1,ROW(2:9),1))*10^(8-ROW(1:8)))
F1 trong công thức = 123456789
 
cho em hỏi ngu thêm chút ạ. có thể rút gọn xuống kết quả cuối là 64 ko ạ ?

[TABLE="width: 200"]
[TR]
[TD]123456789[/TD]
[/TR]
[TR]
[TD]35791357[/TD]
[/TR]
[TR]
[TD]8260482[/TD]
[/TR]
[TR]
[TD]086420[/TD]
[/TR]
[TR]
[TD]84062[/TD]
[/TR]
[TR]
[TD]2468[/TD]
[/TR]
[TR]
[TD]604[/TD]
[/TR]
[TR]
[TD]64[/TD]
[/TR]
[/TABLE]
 
PHP:
Option Explicit
Function Chuyen(Num As Long) As Long
 Dim J As Byte, Tmp As Integer
 Dim StrC As String, Tam As String

 StrC = CStr(Num)
 For J = 1 To Len(StrC) - 1
    Tmp = CByte(Mid(StrC, J, 1)) + CByte(Mid(StrC, J + 1, 1))
    If Tmp > 9 Then Tmp = Tmp Mod 10
    Tam = Tam & CStr(Tmp)
 Next J
 Chuyen = CLng(Tam)
End Function
 
anh Chanh TQ@ ơi, em chưa biết gì về VBA anh có thể giúp em làm 1 bẳng được không ạ ? với 1 lô dãy số này anh làm 1 bảng mẫu cho em với ạ , em cám ơn anh nhiều
[TABLE="width: 113"]
[TR]
[TD="align: right"]985236431[/TD]
[/TR]
[TR]
[TD="align: right"]972513114[/TD]
[/TR]
[TR]
[TD="align: right"]985236806[/TD]
[/TR]
[TR]
[TD="align: right"]985236817[/TD]
[/TR]
[TR]
[TD="align: right"]985237317[/TD]
[/TR]
[TR]
[TD="align: right"]985237326[/TD]
[/TR]
[TR]
[TD="align: right"]985237391[/TD]
[/TR]
[TR]
[TD="align: right"]985237449[/TD]
[/TR]
[TR]
[TD="align: right"]985237525[/TD]
[/TR]
[TR]
[TD="align: right"]985237557[/TD]
[/TR]
[TR]
[TD="align: right"]985237654[/TD]
[/TR]
[TR]
[TD="align: right"]988020585[/TD]
[/TR]
[TR]
[TD="align: right"]985257842[/TD]
[/TR]
[TR]
[TD="align: right"]985274600[/TD]
[/TR]
[TR]
[TD="align: right"]985277227[/TD]
[/TR]
[TR]
[TD="align: right"]985277989[/TD]
[/TR]
[TR]
[TD="align: right"]985295186[/TD]
[/TR]
[TR]
[TD="align: right"]985367263[/TD]
[/TR]
[TR]
[TD="align: right"]985388399[/TD]
[/TR]
[TR]
[TD="align: right"]985388888[/TD]
[/TR]
[TR]
[TD="align: right"]985408686[/TD]
[/TR]
[TR]
[TD="align: right"]985428686[/TD]
[/TR]
[TR]
[TD="align: right"]985433560[/TD]
[/TR]
[TR]
[TD="align: right"]985439024[/TD]
[/TR]
[TR]
[TD="align: right"]985443127[/TD]
[/TR]
[TR]
[TD="align: right"]985447889[/TD]
[/TR]
[TR]
[TD="align: right"]985466066[/TD]
[/TR]
[TR]
[TD="align: right"]985503879[/TD]
[/TR]
[TR]
[TD="align: right"]985515282[/TD]
[/TR]
[TR]
[TD="align: right"]985517856[/TD]
[/TR]
[TR]
[TD="align: right"]985518516[/TD]
[/TR]
[TR]
[TD="align: right"]985520207[/TD]
[/TR]
[TR]
[TD="align: right"]985539538[/TD]
[/TR]
[TR]
[TD="align: right"]985546628[/TD]
[/TR]
[TR]
[TD="align: right"]985547052[/TD]
[/TR]
[TR]
[TD="align: right"]985553366[/TD]
[/TR]
[TR]
[TD="align: right"]985555152[/TD]
[/TR]
[TR]
[TD="align: right"]985555534[/TD]
[/TR]
[TR]
[TD="align: right"]985558126[/TD]
[/TR]
[TR]
[TD="align: right"]985565768[/TD]
[/TR]
[TR]
[TD="align: right"]985577177[/TD]
[/TR]
[TR]
[TD="align: right"]985579356[/TD]
[/TR]
[TR]
[TD="align: right"]985621575[/TD]
[/TR]
[TR]
[TD="align: right"]985622178[/TD]
[/TR]
[TR]
[TD="align: right"]985622993[/TD]
[/TR]
[TR]
[TD="align: right"]985625898[/TD]
[/TR]
[TR]
[TD="align: right"]985626777[/TD]
[/TR]
[TR]
[TD="align: right"]985630632[/TD]
[/TR]
[TR]
[TD="align: right"]985667668[/TD]
[/TR]
[TR]
[TD="align: right"]985688468[/TD]
[/TR]
[TR]
[TD="align: right"]985695502[/TD]
[/TR]
[TR]
[TD="align: right"]985695503[/TD]
[/TR]
[TR]
[TD="align: right"]985695504[/TD]
[/TR]
[TR]
[TD="align: right"]985695508[/TD]
[/TR]
[TR]
[TD="align: right"]985695510[/TD]
[/TR]
[TR]
[TD="align: right"]985695513[/TD]
[/TR]
[TR]
[TD="align: right"]985695524[/TD]
[/TR]
[TR]
[TD="align: right"]985695527[/TD]
[/TR]
[TR]
[TD="align: right"]985695531[/TD]
[/TR]
[TR]
[TD="align: right"]985695772[/TD]
[/TR]
[/TABLE]
 
như dãy A1,A1 = 1234512345 thì kết quả cuối của Pascal = 51 ạ
 
[Thongbao]Ai viết giúp em với ạ[/Thongbao]

Bạn xem đỡ ảnh này:
 

File đính kèm

  • Pascal.JPG
    Pascal.JPG
    110.5 KB · Đọc: 62
dạ em muốn lấy kết quả như thế này ạ ( lấy đến 2 số cuối cùng ạ )
1234512345
357963579
82659826
0814708
895178
74685
1043
147
51
 
& đây là vài trong số các kết quả mà tác giả mong đợi:
 

File đính kèm

  • Pascal 2.JPG
    Pascal 2.JPG
    65.6 KB · Đọc: 59
dạ em muốn lấy kết quả như thế này ạ ( lấy đến 2 số cuối cùng ạ )
1234512345
357963579
82659826
0814708
895178
74685
1043
147
51

Bạn thử file đính kèm xem.

p/s: Bạn nên giả lập dữ liệu vào file excel rồi gửi lên thì mới mong nhanh nhận được đáp án là bảng trong file excel!
 

File đính kèm

dạ em có 30 cặp cần tính từ (A1,A1),(A1,B1)..... (I3,A1) .... (I3,I3) , anh có thể giúp em 1 bảng tính toàn bộ ko ạ ?
 

File đính kèm

em cám ơn ạ , hiện tại có 9 bộ số nhưng em cần 30 bộ số anh ạ anh có thể hoàn chỉnh giúp em không ạ hoặc nếu hoàn chỉnh rồi thì em thêm các bộ số khác nhau thế nào ạ
 
Lần chỉnh sửa cuối:
Hiện tại có 9 bộ số nhưng em cần 30 bộ số anh ạ anh có thể hoàn chỉnh giúp em không ạ hoặc nếu hoàn chỉnh rồi thì em thêm các bộ số khác nhau thế nào ạ

Bạn muốn có số Pascal nào từ bộ số của bạn, thì bạn thêm hay ghi vô cột [A] & cho macro PSC1() chạy nha!

Chúc thành công
 

File đính kèm

em cám ơn ạ , hiện tại có 9 bộ số nhưng em cần 30 bộ số anh ạ anh có thể hoàn chỉnh giúp em không ạ hoặc nếu hoàn chỉnh rồi thì em thêm các bộ số khác nhau thế nào ạ

Bạn gửi file lên xem nào?
-----------
Bạn xem file đính kèm. Nhập bộ số vào cột A, từ A2 trở xuống. Sau đó click nút màu xanh.
 

File đính kèm

Lần chỉnh sửa cuối:
Dùng hàm tự tạo:

Mã:
' hàm công Pascal 1 chuỗi
' hàm đệ quy duyệt chuỗi, cộng mói ký tự với ký tự tiếp theo nó.
' tiép tục làm chgo đến khi đạt độ dài quy định
Public Function CongPas(ByVal chuoi As Variant) As Variant
chuoi = CStr(chuoi)
If Len(chuoi) <= 2 Then ' xong, khi chuỗi còn 2 ký tự
  CongPas = chuoi
  Exit Function
End If
Dim i As Integer, chuoi1 As String
For i = 1 To Len(chuoi) - 1
' duyệt chuỗi, cộng mói ký tự với ký tự tiếp theo nó. Nếu lớn hơn 10 thì chỉ lấy ký tự cuối
  chuoi1 = chuoi1 & CStr((CInt(Mid(chuoi, i, 1)) + CInt(Mid(chuoi, i + 1, 1))) Mod 10)
Next i
CongPas = CongPas(chuoi1)
End Function

Cách dùng:
=CongPas(A1)
 
anh giúp em với nhé . em cảm ơn ạ
 

File đính kèm

Lần chỉnh sửa cuối:
anh befaint giúp em vơi ạ
1. em có thêm 1 dãy số gồm 2 ký tự
tất cả các kết quả ở cột C đều so sánh với dãy số này ( cột E ) nếu khớp thì tại cột D hiện lên các cặp được ghép với nhau ( như A2&A2 chẳng hạn )
2. em cần nhiều Sheet cùng công thức như file anh làm
3. tạo 1 Sheet thống kế sự trùng lặp của các Sheet cụ thể là Xuất hiện tại cột C

Hị vọng được anh giúp đỡ ạ
 

File đính kèm

Bài viết mới nhất

Back
Top Bottom