Hỏi & đáp lập trình

Thảo luận trong 'Lập trình & Đồ hoạ' bắt đầu bởi canh en buon, 23/5/07.

  1. Nighter

    Nighter

    Tham gia ngày:
    14/12/07
    Bài viết:
    2,295
    Nơi ở:
    HuyDesign.com
    save for web thì phải :-?
    image ready chỉ save đc ảnh định dạng gif thôi
     
    almughavar thích bài này.
  2. chicken_hao

    chicken_hao Mr & Ms Pac-Man

    Tham gia ngày:
    9/4/06
    Bài viết:
    280
    Mọi người cho hỏi 1 câu hơi ngoài lề 1 chút . Hiện tai em sắp xong cái bằng CD về phần mềm nhưng thấy rằng không thực sự thích ngành này , thích về đồ họa hơn nhưng vẫn chưa biết bắt đầu từ đâu . Mọi người cho lời khuyên giúp :)
     
  3. Funnnny

    Funnnny Will Code Python For FOOD Moderator

    Tham gia ngày:
    2/8/05
    Bài viết:
    9,406
    Nơi ở:
    Hanoi, Vietnam
    Vẽ tay
    Vẽ trên máy
    Sử dụng công cụ như PTS,Vector...
    Học về 3D
    Nhiều thứ lắm :))
     
  4. Valiant

    Valiant Legend of Zelda

    Tham gia ngày:
    26/5/10
    Bài viết:
    1,082
    Nơi ở:
    Ha Noi, Vietnam,
    Cho mình nhờ 1 chút .
    Mình đang muốn tìm hiểu về lập trình các vi điều khiển trong các mạch điện tử .
    Bạn nào có tài liệu thì share cho mình với nhé .
    Từ A đến Z là ngon :D vì mình chưa biết 1 tý gì về cái này .
    Thx :)
    Bạn nào có tài liệu cơ bản về khoản mạch điện tử thì cũng cho mình luôn nhé :)
     
    Chỉnh sửa cuối: 9/3/11
  5. donkist

    donkist The Warrior of Light

    Tham gia ngày:
    15/11/09
    Bài viết:
    2,235
    Nơi ở:
    Svitk06.com
    Thôi kêu bạn ấy học 3dmax , không thì PTS cho nhanh :)), bạn trên này giống mình khoái tùm lum hết ... ;))
     
  6. rekkhan2

    rekkhan2 Youtube Master Race

    Tham gia ngày:
    19/11/10
    Bài viết:
    26
    thích đồ họa theo hướng nào, 2D hay 3D :-?
     
  7. Valiant

    Valiant Legend of Zelda

    Tham gia ngày:
    26/5/10
    Bài viết:
    1,082
    Nơi ở:
    Ha Noi, Vietnam,
    Ko có ai giúp được mình à :( .
     
  8. ChuyênGiaTrốnHọc

    ChuyênGiaTrốnHọc T.E.T.Я.I.S

    Tham gia ngày:
    13/3/11
    Bài viết:
    629
    Nơi ở:
    To-mo-e Ga-ku-en
    em đang học C# và VB , thằng bạn em nó khuyên học VB trc rồi học C# thì dễ hơn , bác nào có kinh nghiệm rồi có thể cho em lời khuyên nên học gì trước được không ạ , em thấy học cả 2 1 lúc lẫn lộn quá :(
     
  9. Nighter

    Nighter

    Tham gia ngày:
    14/12/07
    Bài viết:
    2,295
    Nơi ở:
    HuyDesign.com
    cả 2 đều thuộc lập trình .net ,có rất nhiều điểm tương đồng ,học vb trc rồi học c# sẽ dễ hơn

    nhưng chắc bạn tự học ở nhà hả ,tự học thì học cả 2 1 lúc làm gì (học làm sao đc),học c# luôn ,nó có tính ứng dụng cao và dễ kiếm tiền hơn :D
     
  10. lPacific

    lPacific Moderator Moderator Lão Làng GVN

    Tham gia ngày:
    15/1/06
    Bài viết:
    4,493
    Nơi ở:
    Heaven
    Có ai biết chỗ nào chuyên dạy về lập trình ở TPHCM ko giúp mình với, đang dự định học Java hay C# gì đấy, ở trường nó chỉ dạy tổng quát mỗi phần mở đầu (lập trình tính toán đơn giản), đang muốn học chuyên sâu :(
     
  11. Funnnny

    Funnnny Will Code Python For FOOD Moderator

    Tham gia ngày:
    2/8/05
    Bài viết:
    9,406
    Nơi ở:
    Hanoi, Vietnam
    Học về lập trình tốt nhất là tự học :D.
    Khuyên thật tình luôn
     
  12. Gió...

    Gió... Mr & Ms Pac-Man

    Tham gia ngày:
    8/11/09
    Bài viết:
    226
    Mình đang làm bài tập xây dựng chương trình quản lý sinh viên đơn giản sử dụng danh sách liên kết đôi:
    Mã:
    #include <stdio.h>
    #include <conio.h>
    #include <stdlib.h>
    #include <string.h>
    
    
    struct dlinklist
    {
        struct dlinklist *prev;  /** Stores address of previous node **/
        int masv;             /** stores roll number **/
        char hovaten[30];            /** stores Name **/
        float diemk1;
    	float diemk2;             /** stores Marks **/
        struct dlinklist *next;  /** stores address of next node **/
    };
    
    /** Redefining dlinklist as node **/
    typedef struct dlinklist node;
    
    void init(node*);     /** Input function **/
    void disp(node*);     /** Function for displaying node **/
    void namesrch(node*); /** Function for searching node by name **/
    
    void main()
    {
        node *head;
        char ch;                         /* Choice inputing varible */
        int opt;                         /* Option inputing variable*/
        static int flag=0;               /* Unchanged after iniialization */
    
        head=(node*)malloc(sizeof(node));
        head->next=NULL;
        head->prev=NULL;
        do
        {
       	again:
        printf("\nNhap vao yeu cau cua ban:\n");
        printf("\n1. Nhap sdu lieu vao danh sach\n");
        printf("\n2. Dien thi du lieu\n");
        printf("\n3. Tim kiem ket qua\n");
        scanf("%d",&opt);
        if(flag==0 && opt!=1)
        {
            printf("\nNo. You must first initialize at least one node\n");
            goto again;
        }
        if(flag==1 && opt==1)
        {
            printf("\nInitialisation can occur only once.\n");
            printf("\nNow you can insert a node\n");
            goto again;
        }
        if(opt==4 && head->next==NULL)
        {
            printf("\nYou cannot delete the one and only the single node\n");
            goto again;
        }
        if(flag==0 && opt==1)
            flag=1;
        switch(opt)
        {
        case 1:
            init(head);
            break;
        case 2:
            disp(head);
            break;
        case 3:
            namesrch(head);
            break;
        }
        printf("\nBan co muon tiep tuc[y/n]\n");
        ch=getche();
        }while(ch=='Y' || ch=='y');
        printf("\nPress any key to exit\n");
    }
    
    void init(node *current)
    {
        current->prev=NULL;
        printf("\nNhap vao SHSV:\n");
        scanf("%d",&current->masv);
        printf("\nNhap vao ten sinh vien:\n");
        fflush(stdin);
        gets(current->hovaten);
        printf("\nNhap vao diem Ky 1:\n");
        scanf("%f",&current->diemk1);
        current->next=NULL;
        printf("\nNhap vao diem Ky 2:\n");
        scanf("%f",&current->diemk2);
        current->next=NULL;
    }
    
    void namesrch(node *current)
    {
        char arr[20];
        printf("\nNhap vao ten sinh vien can tim: \n");
        fflush(stdin);
        gets(arr);
        while(current->next!=NULL)
        {
            if(strcmp(current->hovaten,arr)==NULL)
                printf("\n%d\t%s\t%f\n",current->masv,current->hovaten,current->diemk1,current->diemk2);
            current=current->next;
        }
        if(current->next==NULL && strcmp(current->hovaten,arr)==NULL)
            printf("\n%d\t%s\t%f\n",current->masv,current->hovaten,current->diemk1,current->diemk2);
    }
    
    void disp(node *current)
    {
        while(current!=NULL)
        {
            printf("\n%d\t%s\t%f",current->masv,current->hovaten,current->diemk1,current->diemk2);
            current=current->next;
        }
    }
    
    Cho mình hỏi để có thể nhập thêm một sinh viên nữa(tức là thêm một node nữa) thì làm thế nào, bài của mình bây h chỉ có thể nhâp 1 sinh viên :">, với lại có thể xây dựng giùm mình cái hàm sắp xếp và in ra danh sách sinh viên đã nhập theo họ và tên đc không ?
     
  13. Funnnny

    Funnnny Will Code Python For FOOD Moderator

    Tham gia ngày:
    2/8/05
    Bài viết:
    9,406
    Nơi ở:
    Hanoi, Vietnam
    Thêm node thì như sau
    cur là node đang xét, mở đầu nó là head
    Nhập vào 1 node* gọi là newNode
    cur->next=newNode
    newNode->prev=cur
    newNode->next=null
    Sắp xếp thì làm bubble sort đi, đảo 2 node thì đổi các con trỏ liên quan đến nó là được
    btw, bài tập nên viết cho nó trong sáng 1 tí, kĩ năng lập trình quan trọng nhất đấy
     
    Gió... thích bài này.
  14. Gió...

    Gió... Mr & Ms Pac-Man

    Tham gia ngày:
    8/11/09
    Bài viết:
    226
    em thắc mắc chỗ newNode anh ạ, khai báo nó thế nào bây h
     
  15. Funnnny

    Funnnny Will Code Python For FOOD Moderator

    Tham gia ngày:
    2/8/05
    Bài viết:
    9,406
    Nơi ở:
    Hanoi, Vietnam
    Code của bạn khai báo head được con gì, thế thì khai báo newNode cũng chỉ y hệt thế thôi :D
     
  16. Gió...

    Gió... Mr & Ms Pac-Man

    Tham gia ngày:
    8/11/09
    Bài viết:
    226
    Mã:
    #include<stdio.h>
    #include<conio.h>
    #include<string.h>
    #include<stdlib.h>
    
    struct thongtin
       {
          char hoten[30];
          char malop[12];
          int masv;
          float diemk1;
          float diemk2;
       };
    struct sv
       {
          struct thongtin infor;
          sv *next;
          sv *pret;
       };
    struct listsv
       {
          sv *head;
          sv *tail;
       };
    
    void nhapds(listsv &q);
    void nhapmoi(listsv &q);
    void inds(listsv &q);
    void tim(listsv &q);
    
    
    void nhapds(listsv &q)
       {
          sv *p;
          char hoten[30];
          char malop[12];
          int masv;
          float diemk1;
          float diemk2;
          q.head=NULL;
          while(1)
             {
                printf("Nhap vao ho ten sinh vien: ");
                gets(hoten);
                if(hoten[0]==0)break;
                if(q.head==NULL)
                   {
                      p=(sv*)malloc(sizeof(sv));
                      q.head=p;
                   }
                else
                   {
                      p->next=(sv*)malloc(sizeof(sv));
                      p=p->next;
                   }
                strcpy(p->infor.hoten,hoten);
                printf("Nhap vao SHSV: ");
                scanf("%d%*c",&masv);
                p->infor.masv=masv;
                printf("Nhap vao ma lop: ");
                gets(p->infor.malop);
                printf("Nhap vao diem k1: ");
                scanf("%f%*c",&diemk1);
                p->infor.diemk1=diemk1;
                printf("Nhap vao diem k2: ");
                scanf("%f%*c",&diemk2);
                p->infor.diemk2=diemk2;
    
                q.tail=p;              
    
                p->next=NULL;
                p->pret=NULL;
             }
          p=q.head;
       }
    
    
    void inds(listsv &q)
       {
          sv *p;
          p=q.head;
          while(p!=NULL)
             {
                printf("%d %12s %30s    %.2f    %.2f\n",p->infor.masv,p->infor.malop,p->infor.hoten,p->infor.diemk1,p->infor.diemk2);
                p=p->next;
             }
       }
    
    
    
    
    void main(void)
       {
          listsv q;
          nhapds(q);
          inds(q);
          timsv();
          getch();
       }
    
    đây là bài hiện thời của em, mới chỉ là demo chưa có menu gì cả :D
    anh có thể giúp em xây dựng hàm tim kiếm sinh viên theo tên và hàm sắp xếp sinh viên theo tên thứ tự ABC đc không? :)
     
  17. Gió...

    Gió... Mr & Ms Pac-Man

    Tham gia ngày:
    8/11/09
    Bài viết:
    226
    Mã:
    #include<stdio.h>
    #include<conio.h>
    #include<string.h>
    #include<stdlib.h>
    
    struct thongtin
       {
          char hoten[30];
          char malop[12];
          int masv;
          float diemk1;
          float diemk2;
       };
    struct sv
       {
          struct thongtin infor;
          sv *next;
          sv *pret;
       };
    struct listsv
       {
          sv *head;
          sv *tail;
       };
    
    void nhapds(listsv &q);
    void nhapmoi(listsv &q);
    void inds(listsv &q);
    void tim(listsv &q);
    
    
    void nhapds(listsv &q)
       {
          sv *p;
          char hoten[30];
          char malop[12];
          int masv;
          float diemk1;
          float diemk2;
          q.head=NULL;
          while(1)
             {
                printf("Nhap vao ho ten sinh vien: ");
                gets(hoten);
                if(hoten[0]==0)break;
                if(q.head==NULL)
                   {
                      p=(sv*)malloc(sizeof(sv));
                      q.head=p;
                   }
                else
                   {
                      p->next=(sv*)malloc(sizeof(sv));
                      p=p->next;
                   }
                strcpy(p->infor.hoten,hoten);
                printf("Nhap vao SHSV: ");
                scanf("%d%*c",&masv);
                p->infor.masv=masv;
                printf("Nhap vao ma lop: ");
                gets(p->infor.malop);
                printf("Nhap vao diem k1: ");
                scanf("%f%*c",&diemk1);
                p->infor.diemk1=diemk1;
                printf("Nhap vao diem k2: ");
                scanf("%f%*c",&diemk2);
                p->infor.diemk2=diemk2;
    
                q.tail=p;              
    
                p->next=NULL;
                p->pret=NULL;
             }
          p=q.head;
       }
    
    
    void inds(listsv &q)
       {
          sv *p;
          p=q.head;
          while(p!=NULL)
             {
                printf("%d %12s %30s    %.2f    %.2f\n",p->infor.masv,p->infor.malop,p->infor.hoten,p->infor.diemk1,p->infor.diemk2);
                p=p->next;
             }
       }
    
    
    
    
    void main(void)
       {
          listsv q;
          nhapds(q);
          inds(q);
          timsv();
          getch();
       }
    
    đây là bài hiện thời của em, mới chỉ là demo chưa có menu gì cả :D
    anh có thể giúp em xây dựng hàm tim kiếm sinh viên theo tên và hàm sắp xếp sinh viên theo tên thứ tự ABC đc không? :)
     
  18. Funnnny

    Funnnny Will Code Python For FOOD Moderator

    Tham gia ngày:
    2/8/05
    Bài viết:
    9,406
    Nơi ở:
    Hanoi, Vietnam
    Giờ mình lười code lắm :D
    Tìm kiếm thì rất đơn giản
    Bắt đầu từ con trỏ head, đại loại pseudo-code thế này
    curNode = head
    while curNode->name != sv_name or curNode->next != null:
    curNode = curNode->next
    if curNode->next==null: print "ko tim thay"
    else: return curNode

    Sắp xếp thì dùng bubble sort
    tự xây dựng hàm so sánh tên nhé, giả sử là compare(name,name)
    a = head
    while a!=null:
    b = a->next
    while b!=null:
    if compare(a,b):
    swap(a,b)
    b=b->next

    swap(a,b) rất đơn giản, bạn chỉ việc đảo giá trị name... hoặc đảo giá trị next,prev, cái này tùy bạn làm.
    Thông cảm giờ mình viết python nhiều hơn nên hay viết python pseudo-code
     
  19. [NooB]Manowar

    [NooB]Manowar Youtube Master Race

    Tham gia ngày:
    1/1/08
    Bài viết:
    92
    Nơi ở:
    Karakoram
    [​IMG]
    Mấy anh giúp dùm em cái này với, em tự học mò hoài mà không canh thẳng mấy cái * được :((
    Cho e xin code của hình đó luôn nha :D
     
  20. Nighter

    Nighter

    Tham gia ngày:
    14/12/07
    Bài viết:
    2,295
    Nơi ở:
    HuyDesign.com
    bạn nào bít trang nào nhiều template free để làm web nhi ,share mình với :D
     

Chia sẻ trang này