Зеҳн
АСОСҲОИ АЛГОРИТМ ВА БАРНОМАСОЗӢ БО ЗАБОНИ PYTHON

Агенти Зеҳнӣ · 19 октябри 2026 · 71 саҳифа

Барномасозӣ
Аз аввал хондан

АЛГОРИТМҲОИ КОРКАРДИ МАССИВ
Дар ин боб алгоритмҳои коркарди пайдарпайии ададҳо бо рӯйхатҳои Python амалӣ мешаванд. Рӯйхат, кортеж ва луғат сохторҳои гуногуни додаҳо мебошанд.
Алгоритмҳои асосии ин боб ҷустуҷӯ, тағйирдиҳӣ ва интихоби унсурҳо мебошанд.
ҷустуҷӯ тағйир додан ҷудо кардан

Ҷустуҷӯ дар массив
Дар мисолҳо a рӯйхат, n = len(a) шумораи унсурҳо ва i индекс мебошад. Индексҳои дуруст аз 0 то n − 1 мебошанд.
Масъала. Дар рӯйхат аввалин унсури ба x баробарро ёбед ва индекси онро нишон диҳед. Агар чунин унсур набошад, паёми мувофиқ бароред.
a = [1, 5, 4, 31, 10] x = int(input('Қимати ҷустуҷӯшавандаро ворид кунед: ')) nx = -1

for i in range(len(a)):
if a[i] == x:
nx = i break

if nx != -1:
print('Ёфт шуд. Индекс:', nx) else:
print('Ёфт нашуд.')
nx индексро нигоҳ медорад, на қимати унсурро. Қимати -1 дар ин алгоритм аломати «ёфт нашуд» мебошад; онро барои дастрасӣ ба рӯйхат истифода намебарем. Барои x = 1 натиҷа индекси 0 аст. Алгоритм барои рӯйхати холӣ низ паёми «Ёфт нашуд.» медиҳад.
Ин масъаларо бо роҳи дигар ҳал кардан мумкин аст: функсияи индексро дар массив истифода баред, ки индекси унсури аввалини ёфтшударо ба x баробар бармегардонад:
a = [16, 29, -5, -11, 23, 14, -7, 23, 18] print(a.index(23)) # 4 Агар қимат дар рӯйхат набошад, a.index(x) истиснои ValueError медиҳад. Пеш аз он метавон мавҷудиятро бо x in a санҷид.
Масъалаи 2. Унсури максималиро дар массив ёбед, ки бояд дар тағйирёбандаи "m" нигоҳ дошта шавад. Барои ин, мо бояд ҳамаи унсурҳои массивро як ба як дида бароем. Агар унсури навбатӣ аз максималии унсурҳои қаблӣ (дар тағйирёбандаи "m" нигоҳ дошта мешавад) зиёдтар бошад, мо қимати нави унсури максималиро дар "m" нигоҳ медорем.
Барои ёфтани максимум дар рӯйхати ғайрихолӣ қимати аввалро ҳамчун максимум қабул мекунем. Сипас онро бо унсурҳои боқимонда муқоиса менамоем. Аз 0 оғоз кардан ҳамеша дуруст нест: агар ҳамаи ададҳо манфӣ бошанд, 0 умуман дар рӯйхат набошад ҳам, натиҷаи нодуруст медиҳад.
a = list(range(1, 20)) if len(a) == 0:
print('Рӯйхат холӣ аст.') else:
m = a[0] for i in range(1, len(a)):
if a[i] > m:
m = a[i] print(m) Натиҷа 19 аст. Индексҳои дуруст аз 0 то len(a) - 1 мебошанд.

пешина
аз 71
навбатӣ