توجه

استاد حل تمرین روز پنجشنبه فاطمی می باشد.

کلاس جبرانی ++C و #C

کلاس جبرانی ++C و #C مورخ 89/12/12  ساعت 8:30 صبح برگزار می شود.مکان کلاس در حال حاضر ساختمان IT می باشد.در صورت تغییر،مکان کلاس  بر روی برد ساختمان IT اعلام می شود.


توجه

مکان کلاس پنجشنبه،سایت ساختمان فنی می باشد.

توجه

استاد حل تمرین روز چهارشنبه آقای صدقی می باشد.

استاد حل تمرین روز پنجشنبه فاطمی می باشد.

کلاس جبرانی ++C و #C

کلاس جبرانی ++C و #C مورخ 89/12/5  ساعت 8 صبح برگزار می شود.مکان کلاس تا چهارشنبه از همین وبلاگ اعلام می گردد.

کلاس جبرانی C++

کلاس جبرانی C++ مورخ 89/12/4 در ساختمان علوم طبقه سوم کلاس 304 ساعت 8 صبح برگزار می شود.

آندسته دانشجویانی که متقاضی دریافت PDF کتاب C++ می باشند با خود یک CD خام بیاورند.

کلاس برنامه نویسی C

انشائالله این چهارشنبه مورخ 27 بهمن ماه ساعت حدود 9 صبح کلاس برنامه نویسی C در ساختمان IT برقرار خواهد شد. دانشجویانی که درس مبانی را پاس کرده اند درصورت تمایل می توانند از این کلاس استفاده کنند. 

پاکدامن

توجه

دانشجویانی که در ستون وضعیت  مقابل نامشان "PASS" نوشته شده نمره ای بین (۲.۵-۵) گرفته اند ، این بدان معناست که حداقل نمره را دریافت نموده اند و شرایط حضور در امتحان را دارا می باشند.

نمرات کلاس سه شنبه و پنجشنبه

نمرات کلاس های را می توانید از لینک های زیر دانلود کنید:

http://www.4shared.com/file/21jrkBsR/Gradesfinal.html

نکته 1: نمرات کلاس پنجشنبه در sheet2 می باشد.(در همان فایل پس از باز کردن فایل بر روی (sheet2)کلیک کنید.

نکته2:آن دسته از دانشجویانی که در لیست ها ، در ستون توضیح، کلمه leniency درج شده است ، به آنها برای بدست آوردن حداقل نمره ارفاق شده است.

نکته3:آن دسته از دانشجویانی که در لیست ها ، در ستون توضیح، کلمه contactدرج شده است ، شانس قبولی را دارا می باشند ، و باید به ایمیل حل تمرین ایمیل زده و علت عدم حضور در امتحان را توضیح داده تا در صورت موجه بودن ، در وضعیت آن ها تجدید نظر شود.

نمرات کلاس دوشنبه

نمرات کلاس دوشنبه را می توانید از لینک های زیر دانلود کنید:

http://www.4shared.com/file/PXRH0G2f/RESULT__1_.html

دانشجویان می بایست حتما فایل توضیح را از لینک زیر دانلود کنند:

http://www.4shared.com/file/OPswHUdH/RESULT.html

تمرینات MIT

آخرین سری تمرینات MIT که برای امتحان بهتر است حل کرده باشید تمرین سری 7 با عنوان 

Review problems می باشد

موفق باشید

پاکدامن

کدهای کلاسی جلسه پایانی

def exp1(a,b):

    ans = 1

    while (b>0):

        ans *= a

        b -=1

    return ans


def exp2(a,b):

    if b==1:

        return a

    else: return a*exp2(a,b-1)


def exp3(a,b):

    if b==1:

        return a

    if b%2 ==0:

        return exp3(a*a,b/2)

    else: return a*exp3(a,b-1)


def g (n,m):

    x = 0

    for i in range(n):

        for j in range(m):

            x+=1

    return x

def Towers(size,fromStack,toStack,sparseStack):

    if size == 1:

        print 'Move disk from',fromStack,'to',toStack

    else:

        Towers(size-1,fromStack,sparseStack,toStack)

        Towers(1,fromStack,toStack,sparseStack)

        Towers(size-1,sparseStack,toStack,fromStack)


def search(s,e):

    answer = None

    i = 0

    numCompares =0

    while i

        numCompares +=1

        if e==s[i]:

            answer = True

        elif e < s[i]:

            answer = False

        i +=1

    print answer, numCompares

                


def bsearch(s,e,first,last,calls):

    print first, last, calls

    if (last -first)< 2 : return s[first]==e or s[last]==e

    mid = first + (last-first)/2

    if s[mid] == e: return True

    if s[mid] > e:

        return bsearch(s,e,first,mid-1,calls+1)

    else:

        bsearch(s,e,mid+1,last,calls+1)

        

    

def search1(s,e):

    print bsearch(s,e,0,len(s)-1,1)

    print 'Search Completed!'



def testSearch():

    s = range(0,1000000)

    raw_input('basic 1000000')

    print search(s,1000000)

    raw_input('binary 1000000')

    print search1(s,1000000)

    

def selSort(s):

    for i in range(len(s)):

        minIdx = i

        for j in range(i+1,len(s)):

            if s[j]

                minIdx = j

        tmp = s[i]

        s[i]= s[minIdx]

        s[minIdx] = tmp

    return s


def BubbleSort(L):

    for j in range(len(L)):

        for i in range(len(L)-1):

            if L[i]>L[i+1]:

                temp = L[i]

                L[i]=L[i+1]

                L[i+1] = temp

        print L


def BubbleSort2(L):

    

    while swaped:

        swaped = False

        for i in range(len(L)-1):

            if L[i]>L[i+1]:

                temp = L[i]

                L[i]=L[i+1]

                L[i+1] = temp

                swaped = True

        print L


def merge(left,right):

    result = []

    i,j = 0,0

    while i

        if left[i]

            result.append(left[i])

            i = i+1

        else:

            result.append(right[j])

            j = j + 1

    while i

        result.append(left[i])

        i = i+1

    while j

        result.append(right[j])

        j = j+1

    return result


def mergeSort(L):

##    print L

    if len(L)<2:

        return L[:]

    else:

        middle = len(L)/2

        left = mergeSort(L[:middle])

        right = mergeSort(L[middle:])

        together = merge(left,right)

##        print 'together',together

        return together


def Max_sub1(L):

    max_Sum = 0

    for i in range(len(L)):

        for j in range(i,len(L)):

            this_Sum = 0

            for k in range(i,j+1):

                this_Sum = this_Sum + L[k]

            if this_Sum > max_Sum: max_Sum = this_Sum

    return max_Sum


def Max_sub2(L):

    max_Sum = 0

    for i in range(len(L)):

        this_Sum = 0

        for j in range(i,len(L)):

            this_Sum = this_Sum + L[j]

            if this_Sum > max_Sum: max_Sum = this_Sum

    return max_Sum

    

def Max_sub3(L,first,last):

    max_sub,max_perf,max_suf = 0,0,0

    if first==last:

        if L[first]>0:

            return L[first],L[first],L[first]

        else:

            return 0,0,0

    mid = int((first+last)/2)

    max_sub1,max_perf1,max_suf1= Max_sub3(L,first,mid);

    max_sub2,max_perf2,max_suf2= Max_sub3(L,mid+1,last);

    max_sub = max(max_sub1,max_sub2,max_suf1+max_perf2)


    max_perf = 0

    this_perf = 0

    for i in range(first,last+1):

        this_perf = this_perf+L[i]

        if this_perf > max_perf: max_perf = this_perf


    max_suf = 0

    this_suf = 0

    for i in range(first,last+1):

        this_suf = this_suf+L[first+last-i]

        if this_suf > max_suf: max_suf = this_suf

    return max_sub,max_perf,max_suf


def Max_sub4(L):

    max_sub,max_suf = 0,0

    if len(L)==1:

        if L[0]>0: return L[0],L[0]

        else: return 0,0

    max_sub1,max_suf1 = Max_sub4(L[0:-1])

    max_suf = 0

    if max_suf1+L[-1]>max_suf:

        max_suf = max_suf1+L[-1]

    max_sub = max(max_sub1,max_suf)

    return max_sub,max_suf

    

    

def Max_sub5(L):

    max_sub, max_suf = 0,0

    for i in range(len(L)):

        max_suf = max(0,max_suf+L[i]);

        max_sub = max(max_suf,max_sub);

    return max_sub


توجه

جدول زمانبندی برای همه دانشجویان همان جدول زمانبندی گذاشته شده در وبلاگ می باشد .(چه دانشجویانی  روزهای دوشنبه ، چه دانشجویان روزهای سه شنبه و پنجشنبه) تاریخ امتحان نیز برای همه دانشجویان،همان89/10/20 می باشد.

مکان امتحان عملی

مکان امتحان عملی سایت کامپیوتری ساختمان فنی می باشد.

گروه امتحانی روزهای دوشنبه

دانشجویانی ک اسامی آنها در کلاس های روز دوشنبه می باشد،می توانند گروه بندی امتحان را از آدرس زیر دانلود کنند:

http://www.4shared.com/file/dTeybZqP/exam.html


توجه

آن دسته از دانشجویانی که اسم آنها در لیست های نمره قرمز بوده است،برخی از آنها با توجه به سابقه و تعداد حضور و صلاح دید اساتید حل تمرین و استاد پاکدامن از شرکت در امتحان عملی محروم شده اند.

توجه

دانشجویان می بایست طبق جدول گروه ها و جدول زمانبندی در امتحان شرکت کنند.هیچ گونه تغییر در گروه و زمان پذیرفته نمی باشد.

گروه امتحانی روزهای پنجشنبه

گروه E:

نام خانوادگی

نام

منصوری

عاطفه

مهربخش

زهرا

لباف

غزاله

خداویردی

پریسا

صالحی

فایزه

محمدکاظم

مرتضی

خسروی

نگین

اقبال

بیتا

حسین  پور

بهناز

شکوهی

فرانک

گروهF:

نام خانوادگی

نام

غیاثوند

پروانه

ملکی

نگین

نصیریان

آناهیتا

پریشیان

ارکیده

حسن نژاد

علیرضا

بنی هاشمی

طنین  

محمد اقتصادی نیز با گروه F در امتحان حضور پیدا کند.

زمان بندی امتحان

زمان

گروه

8:30الی9:30

A

9:30الی10:30

B

10:30الی12

C

12الی13

D

13الی14

E

14الی15

F

 

گروه امتحانی روزهای سه شنبه

گروهA:

نام خانوادگی

نام

اصغری

غزال

ذاکری

محمدرضا

شاکری

محمدامیر

اسدالله زاده

زهرا

یومتوبیان

دبورا

خادمی

سیدرضا

قاسم زاده

اشکان

غلام

محمد

 

گروهB:

نام خانوادگی

نام

اشراقی

پریسا

امیری

مارال

ایرانخواه

توحید

جعفری

جواد

جعفری

محمدرضا

سادات باریکانی

محسن

دانشیان

نیلوفر

پیمانی

سروش

یوسفیان

بهنوش

هدایتی

حسین

گروه C:

نام خانوادگی

نام

نعمت اللهی

رعنا

محمد حسن زاده

حمیدرضا

کریمی ها

مریم

قریشی

آرمین

فضل علی

پویا

حاجی بیگی

امیرحسین

حسینی

امیرعلی

دهقان

حسام

رهبانی

مهسا

سیدعلیخانی

سعیده

گروه D: 

سیفی

اشکان

سیفی

فرزین

شهبازی

پارمیدا

شیخانی

فاطمه

طاهری

بهنام

طاهری

مینا

باقری

عسل

فرزانه نیا

کامیار

 


تاریخ امتحان عملی

با عرض سلام و خسته نباشید 

دانشجویانی که اسامی آن ها در کلاس های حل تمرین می باشد،می بایست در روز دوشنبه مورخ 89/10/20در امتحان عملی شرکت کنند.آن دسته از دانشجویانی که به هر دلیلی در امتحان عملی شرکت نمی کنند نمره آن ها کمتر از 2.5 می باشد .

ساعت و گروه های امتحانی حداکثر تا جمعه مشخص می شود.

لینک تمرین ششم درس مبانی

لطفا از طریق لینک زیر تمرین شماره ششم را دانلود کنید. همچنین مهلت تحویل تا 18 دی ماه  می باشد.

توجه داشته باشید که تمرین ششم نیز دارای چند فایل اضافه است که باید آن را نیز  دانلود کرده و استفاده کنید

http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/assignments/


لولا المشقه ساد الناس کلهم الجود یفقر و الاقدام قتال


با آرزوی موفقیت 

پاکدامن

کلاس جبرانی (مخصوص دانشجویان کلاس پنجشنبه)

قابل توجه دانشجویانی که اسامی آنها در لیست کلاس پنجشنبه می باشد،

روز سه شنبه مورخ 89/10/14 ساعت 12 الی 13:30 در  ساختمان علوم طبقه 3 کلاس جبرانی می باشد .

شرکت در این کلاس اجباری می باشد.

عدم تشکیل کلاس

با عرض پوزش،قابل توجه دانشجویان کلاس سه شنبه ، کلاس حل تمرین روز سه شنبه مورخ 89/10/14 برگزار نمی شود. تاریخ و ساعت کلاس حل تمرین های MIT بعدا اعلام می شود .

عدم تشکیل کلاس

با عرض پوزش،کلاس حل تمرین روز دوشنبه مورخ 89/10/13 برگزار نمی شود.

نمرات کلاس دوشنبه

با عرض پوزش از تاخیر پیش آماده:

فایل نمرات را می توانید از آدرس زیر دانمود کنید:

http://www.4shared.com/file/YpdzbbNj/GRADES_.html

  1. nokteye1) nomarate tamame sutanha az 10 mibashad va sutane tamrinhaye MIT az 20 nomre mibashad
  2. nokteye2) nomarate fogh ghatee nemibashad va az barnamehayi ke tahvil dadid soal mishavad
  3. dalile nomaraye payin tahvil nadadane tamrinate MIT ast ke bishtarin nomre ra darad
  4. baraye tamas ba aghaye sedghi hatman dar subject  emaile khod [SEDGHI] ra type konid
  5. kesayi ke esmeshun ba ghermez highlight shode bayad baraye ghabbul nomreye amalie balayi begirand
  6. range aabi top student ha hastan va range sabz mafhoomi nadarad va baraye peida kardane rahat naam bekar miravad.

lecture #8

def exp1(a,b):

    ans = 1

    while (b>0):

        ans *= a

        b -=1

    return ans


def exp2(a,b):

    if b==1:

        return a

    else: return a*exp2(a,b-1)


def exp3(a,b):

    if b==1:

        return a

    if b%2 ==0:

        return exp3(a*a,b/2)

    else: return a*exp3(a,b-1)


def g (n,m):

    x = 0

    for i in range(n):

        for j in range(m):

            x+=1

    return x

def Towers(size,fromStack,toStack,sparseStack):

    if size == 1:

        print 'Move disk from',fromStack,'to',toStack

    else:

        Towers(size-1,fromStack,sparseStack,toStack)

        Towers(1,fromStack,toStack,sparseStack)

        Towers(size-1,sparseStack,toStack,fromStack)


def search(s,e):

    answer = None

    i = 0

    numCompares =0

    while i

        numCompares +=1

        if e==s[i]:

            answer = True

        elif e < s[i]:

            answer = False

        i +=1

    print answer, numCompares

                


def bsearch(s,e,first,last):

    print first, last

    if (last -first)< 2 : return s[first]==e or s[last]==e

    mid = first + (last-first)/2

    if s[mid] == e: return True

    if s[mid] > e:

        return bsearch(s,e,first,mid-1)

    else:

        bsearch(s,e,mid+1,last)

        

    

def search1(s,e):

    print bsearch(s,e,0,len(s)-1)

    print 'Search Completed!'



def testSearch():

    s = range(0,1000000)

    raw_input('basic -1')

    print search(s,-1)

    raw_input('binary -1')

    print search1(s,-1)

    


lecture #7

##Example of Structured code

##

##import math

### Get Base

##inputOK = False;

##while not inputOK:

##    base = input('enter Base: ')

##    if type(base)==type(1.0): inputOK=True

##    else: print('Error: You must enter a float value');

##

### Get height

##inputOK = False;

##while not inputOK:

##    height = input('enter Height: ')

##    if type(height)==type(1.0): inputOK=True

##    else: print('Error: You must enter a float value');

##

##

##hyp = math.sqrt(base*base+height*height)

##

##print 'Base '+str(base)+'Height:'+str(height)+'hyp:'+str(hyp)

##

##

import math

def getFloat(reqMsg,ErrMsg):

    inputOK = False;

    while not inputOK:

        val = input(reqMsg)

        if type(val)==type(1.0): inputOK=True

        else: print(errMsg);

    return val

base = getFloat('Enter Base:','Err: Base must be float value.')

height = getFloat('Enter Height:','Err:Height Must be float value.')

hyp = math.sqrt(base*base+height*height)


print 'Base '+str(base)+'Height:'+str(height)+'hyp:'+str(hyp)


نمرات کلاس سه شنبه و پنجشنبه

با عرض پوزش از تاخیر پیش آماده:

فایل نمرات را می توانید از آدرس زیر دانمود کنید:

http://www.4shared.com/file/ueB8aYsz/grades.html

نکته1:دانشجویانی که در لیست ها نام آنها با رنگ قرمز مشخص شده است،نمره حد نصاب را تا اینجا کسب نکرده اند و می بایست تلاش کنند تا خود را به امتحان عملی برسانند.

نکته2: نمرات کلاس سه شنبه از 60 و کلاس پنجشنبه از 42 می باشد .

نکته3: دانشجویانی که در لیست ها نام آنها با رنگ سبز مشخص شده است،top student هر کلاس می باشند.

نکته4: آندسته از دانشجویانی که حضور آنها کمتر از 4 می باشد،نمره حل تمرین آن ها زیر 2.5 می باشد .

نکته5: دانشجویان پنجشنبه فایل نمرات را که باز کردنند،می توانند نمرات خود را در sheet2مشاهده کنند.

با تشکر 

فاطمی 

عدم تشکیل کلاس

با عرض پوزش،کلاس حل تمرین روز پنجشنبه مورخ 89/10/2 برگزار نمی شود.