Chủ Nhật, 21 tháng 12, 2014

Truck in 2D Array

[Code C/C++] Truck in 2D Array

1. This is a program for Truck in 2D Array
TRUCK-IN-2D-ARRAY
TRUCK-IN-2D-ARRAY

2. Download Source Code
:  Here

3. Code:
#include<iostream>
#include<conio.h>
using namespace std;
void main()
{
int i, j, t;
float s = 0, a, b;
_getch();
for (t = -72; t<62; ++t)
{
system("cls");
for (i = 0; i<15; ++i)
{
cout << endl;
}
for (i = 0; i<17; ++i)
{
for (j = 0; j<78; ++j)
{
if (((j + t == 20 || j + t == 59) && i != 0) 
          || (i == 0 && j + t<59 && j + t>20) 
          || (i == 5 && j + t<20 && j + t>14) 
          || (j + t == 20 - i&&i >= 5 && i <= 10) 
          || (i>10 && j + t == 10) 
          || (i == 16 && j + t>10 && j + t<60) 
          || (i == 10 && j + t<20 && j + t>10) 
          || (i == 15 && j + t<60 && j + t>20) 
          || (j + t == 15 && i<10 && i>5) 
          || (i == 12 && j + t>11 && j + t<15) 
          || (i == 13 && (j + t == 12 || j + t == 13)))
cout << "*";
else
cout << " ";
}
cout << endl;
}
for (i = 0; i<4; ++i)
{
for (j = 0; j<78; ++j)
{
if (((i == 0 || i == 3) && (j + t == 15 
          || j + t == 16 || j + t == 54 || j + t == 55 
          || j + t == 49 || j + t == 50 || j + t == 44 
          || j + t == 45)) || ((i == 2 || i == 1) && ((j + t>13 && j + t<18) 
          || (j + t>52 && j + t<57) || (j + t>47 && j + t<52) 
          || (j + t>42 && j + t<47))))
cout << "*";
else
cout << " ";
}
cout << endl;
}
for (j = 0; j<80; ++j)
cout << "*";
for (a = 0; a<10000; ++a)
{
s = s + a;
for (b = 0; b<1000; ++b)
s = s + b;
}

}
_getch();
}

Loading Status Bar

[Code C/C++] Loading Status Bar

1. This is a program for loading bar.
This is a program for loading bar.";
This is a program for loading bar.";

2. Download Source Code:  Here
3. Code:
#include <conio.h>
#include <iostream>
using namespace std;
/*
StudyCoding.net
Loading Bar
*/
void main()
{
float i, p = 0, m, s = 0, a;
for (int j = 0; j<60; ++j, ++p)
{
system("cls");
cout << endl << endl << "Loading bar: stormcodes.blogspot.com";
for (i = 0; i<20; ++i)
cout << endl;
cout << endl << " ";
for (i = 0; i<60; ++i)
cout << "-";
cout << endl << " |";
char ch = 177;
for (i = 0; i<p + 1; ++i)
cout << ch;
for (int k = 60; k>p + 1; --k)
cout << " ";
cout << "|";
cout << endl << " ";
for (i = 0; i<60; ++i)
cout << "-";
for (m = 0; m<50000; ++m)
{
s = m + s;
for (a = 0; a<2000; ++a)
{
s = s + a;
}
}
}
_getch();
}

Bài tháp số C/C++

[C/C++] Bài tháp số C/C++

Nhập vào chiều cao của tháp, In ra tháp số giảm dẫn theo chiều cao và tướng số lượng phần tử tăng dần.
Source code:
#include<stdio.h>
int main()
{
int i,j,k,n,a,b;
printf("Nhap chieu cao? ");
scanf("%d",&n);
n=n*2;

for(i=1;i<n;i+=2)
{
for(j=n-1;j>i;j-=2)
printf(" ");
for(k=1;k<=(i/2)+1;++k)
printf("%d",k);
for(k=i/2;k>=1;--k)
printf("%d",k);
printf("\n");
}
scanf("%d",&n);
return 0;
}

Cách khai báo mảng 1 chiều trong C/C++

Cách khai báo mảng 1 chiều trong C/C++

Cách định nghĩa mảng trong lập trình căn bản C/C++
1. Khai báo cấp phát cố định


int a[100];
// khai báo xin cấp phát 1 mảng 1 chiều gồm có 100 phần tử
Nên #define số luợng phần tử truớc để dễ quản lý
#define ARRAY_SIZE 5
int anArray[ARRAY_SIZE];
Đối với cách này đòi hỏi phải "luờng" truơc đuợc số phần sử khi chuơng trình sử dụng.
Hạn chế sử dụng cách này vì sẽ phí bộ nhớ
/* malloc example: random string generator*/
#include <stdio.h> /* printf, scanf, NULL */
#include <stdlib.h> /* malloc, free, rand */

int main ()
{
int i,n;
char * buffer;

printf ("How long do you want the string? ");
scanf ("%d", &i);

buffer = (char*) malloc (i+1);
if (buffer==NULL) exit (1);

for (n=0; n<i; n++)
buffer[n]=rand()%26+'a';
buffer[i]='\0';

printf ("Random string: %s\n",buffer);
free (buffer);

return 0;
}
2. Khai báo cấp phát động
Đối với ngôn ngữ C ta sử dụng toán tử malloc
int *myArray;
myArray = (int*)malloc(n*sizeof(int));
Đỗi với C++ ta sử dụng toán tử new

#define ARRAY_SIZE 5
int *myArray;
myArray = new int[ARRAY_SIZE];
Lưu ý: Đối với dạng sử dụng con trỏ sau khi sử dụng nhớ sử dụng toán tử delete để hủy nó khi không còn sử dụng.

#include <iostream>
#include <new>
using namespace std;

int main ()
{
int i,n;
int * p;
cout << "How many numbers would you like to type? ";
cin >> i;
p= new (nothrow) int[i];
if (p == nullptr)
cout << "Error: memory could not be allocated";
else
{
for (n=0; n<i; n++)
{
cout << "Enter number: ";
cin >> p[n];
}
cout << "You have entered: ";
for (n=0; n<i; n++)
cout << p[n] << ", ";
delete[] p;
}
return 0;
}

C/C+ căn bản - OOP

C/C+ căn bản - OOP

Xin giới thiệu bộ tài liệu học C/C++ từ căn bản tới hướng đối tượng, phù hợp cho các bạn mới bắt đầu Học Lập Trình cũng như muốn rèn luyện kỹ thuật code của mình với Lập trình C/C++
Tài liệu gồm:
+ Slide bải giảng căn bản - OOP
+ Bài tập lớn C/C++
+ Tuyển tập đề thi olimpic lập trình

+ Đồ họa C/C++ ( tham khảo )
+ Socket 
+ Kỹ thuật lập trình căn bản đến nâng cao Phạm Văn Ất
+ Lập trình C/C++ nâng cao
+ Source code soft từ điển + Game Xếp gạch code bằng C/C++
Link Down: Úp bởi Studycoding

Tài liệu cho bắt đầu học lập trình

1. Bài giảng Phong cách lập trình - Thầy Đặng Bình Phương - ĐHKHTN
Bài giảng Phong cách lập trình - Thầy Đặng Bình Phương - ĐHKHTN
Link Download:
  ▶ Bài giảng Phong cách lập trình:  Tại đây
2. Bài giảng Nhập môn lập trình - Thầy Đặng Bình Phương - ĐHKHTN

Bài giảng Nhập môn lập trình - Thầy Đặng Bình Phương - ĐHKHTN
Link Download:
  ▶ Bài giảng Nhập môn lập trình:  Tại đây
 3. Bài giảng Kỹ thuật lập trình - Thầy Đặng Bình Phương - ĐHKHTN 

Bài giảng Kỹ thuật lập trình - Thầy Đặng Bình Phương - ĐHKHTN
Link Download:
  ▶ Bài giảng Kỹ thuật lập trình:  Tại đây

4. Bài giảng Lập trình huớng đối tuợng - Thầy Khang - ĐHKHTN
 Link Download:
  ▶ Lập trình huớng đối tuợng:  Tại đây
Một số đề thi nhập môn lập trình, kỹ thuật lập trình, lập trình huớng đối tượng, . . .




 
Nguồn: tổng hợp và sưu tầm

Code website bán hàng C# và ASP

1/ Phần mềm quản lí (C# chạy trên Visual Studio 10.0)
Cái này mình đã viết tương đối hoàn chỉnh, bắt lỗi input dữ liệu, thay đổi số lượng hàng hóa theo hóa đơn, tính toán thống kê tài chính ….)
Nếu lần đầu tiên chạy thì nó sẽ yêu cầu kết nối như sau, các bạn thao tác kêt nối đến SQL rùi chọn DB mà ban nãy mới restore ra nhé.
[​IMG]

Sau đó các bạn dung acount: AD01 và pass là 1 để đăng nhập quyền admin cao nhất (mình quản lí cả nhân viên nên phân quyền các thứ đủ cả )

[​IMG]


[​IMG]


[​IMG]


[​IMG]


[​IMG]


2/ Website bán hàng (ASP.NET)

Bao gồm các hạng mục: show sản phẩm, giỏ hàng, feedback, cho phép khách hàng tạo tài khoản và truy cập thông tin cá nhân của khác hàng, tìm kiếm cơ bản và nâng cao….)
Để chạy được web thì các bạn phải vào file Web.config để sửa kết nối DB nhé, bạn nào chưa bít làm thì có để lại cm bên dưới mình sẽ hướng dẫn. (Dùng chung Database với cái ở trên nhé, 2 cái này quản lí lẫn nhau mà )

Link : Quản lý website bá điện thoại

Thứ Ba, 16 tháng 12, 2014

Source code chương trình chụp ảnh toàn bộ trang Web (Webpage capture)

3

c2.png

 Source code chương trình chụp ảnh toàn bộ trang Web

Sử dụng một WebBrowser control để nạp trang web, bạn có thể chụp được ảnh màn hình dựa vào kích thước của tài liệu trong WebBrowser thông qua phương thức Graphics.CopyFromScreen(). Tuy nhiên, WebBrowser đã hỗ trợ sẵn phương thức DrawToBitmap() giúp bạn làm việc này.

Download demo + sourcecode (16KB)
Pass giải nén: hoidapit.com.vn

Screenshot:


Phương pháp chụp hình trang web này dựa vào việc tạo một WebBrowser và phóng to cửa sổ để hiển thị toàn bộ trang web. Sau đó ta sẽ dùng phương thức DrawToBitmap() để lưu ảnh vào một Bitmap.
Để đảm bảo việc chụp ảnh trang web chỉ diễn ra một lần, ta cần làm công việc này trong sự kiện WebBrowser.DocumentCompleted, và sử dụng thêm property WebBrowser.ReadyStateđể kiểm tra việc nạp xong trang web.

Chụp ảnh

Phương thức CaptureWebPage() sau cung cấp thêm việc hiển thị tiến trình làm việc của WebBrowser thông qua một progressBar1:
void CaptureWebPage(string url)
{
    Cursor.Current=Cursors.WaitCursor;
    progressBar1.Show();
    if (_browser == null) {
        _browser = new WebBrowser();
        _browser.ProgressChanged += (sender,e) =>
        {
             progressBar1.Value = (int)(((double)e.CurrentProgress / e.MaximumProgress)*100);
        };
 
        _browser.DocumentCompleted += (sender, e) =>
        {
            if (_browser.ReadyState == WebBrowserReadyState.Complete) {
 
                int width = _browser.Document.Body.ScrollRectangle.Width;
                int height =_browser.Document.Body.ScrollRectangle.Height;
 
                _bitmap = new Bitmap(width,height);
 
                _browser.Size = _bitmap.Size;
                _browser.DrawToBitmap(_bitmap,_browser.Bounds);
                _browser.Stop();
 
                pictureBox1.Image = _bitmap;
                pictureBox1.Size = _bitmap.Size;
 
                lblImageSize.Text= String.Format("{0} x {1} pixels",_bitmap.Width,_bitmap.Height);
 
                progressBar1.Hide();
            }
        };
    }
    _browser.Navigate(url);
}

Thay đổi kích thước ảnh

Vì việc resize sẽ làm thay đổi ảnh nên cần sử dụng một đối tượng Bitmap (thành viên của lớp) để lưu lại ảnh ban đầu. Ví dụ sau sử dụng một NumericUpDown cho phép người dùng thay đổi kích thước theo phần trăm, từ đó tính ra kích thước mới (width x height):
void NumPercentValueChanged(object sender, EventArgs e)
{
    if(_bitmap==null)
        return;
    float percent=(float)(numPercent.Value/100);
    Bitmap bmp=new Bitmap((int)(_bitmap.Width*percent),(int)(_bitmap.Height*percent));
    lblImageSize.Text= String.Format("{0} x {1} pixels",bmp.Width,bmp.Height);
    Graphics g=Graphics.FromImage(bmp);
    g.DrawImage(_bitmap,0,0,bmp.Width,bmp.Height);
    pictureBox1.Image=bmp;
    pictureBox1.Size=bmp.Size;
}

Lưu ảnh

Sử dụng phương thức Image.Save(), phương thức này chấp nhận một tham số ImageFormatdành cho định dạng ảnh:
void BtnSaveClick(object sender, EventArgs e)
{
    if(saveFileDialog1.ShowDialog()==DialogResult.OK)
    {
        ImageFormat format;
        switch(saveFileDialog1.FilterIndex)
        {
            case 1:
                format=ImageFormat.Png;
                break;
            case 2:
                format=ImageFormat.Jpeg;
                break;
            default:
                format=ImageFormat.Bmp;
                break;
        }
        pictureBox1.Image.Save(saveFileDialog1.FileName,format);
    }
}

Bài đăng phổ biến