русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Проведения обзорных лекций


Дата добавления: 2013-12-23; просмотров: 786; Нарушение авторских прав


ГРАФИК

Р.

Образовательных учреждений высшего и среднего профессионального образования

Проведения лекций представителей департаментов Министерств экономического развития Российской Федерации для студентов

График

Резюме

Else

Else

Классификация по сфере применения

Классификация по характеру обработки данных

Классификация по степени автоматизации

Классификация по архитектуре

Классический генетический алгоритм в задаче коммивояжера.

Классификация систем

Институциональная схема банковской системы

Организационная схема банковской системы

Понятие и классификация банковской системы

Тематика и график лекций

Высшего профессионального образования

Федеральное государственное автономное образовательное учреждение

«Казанский (Приволжский) федеральный университет»

Структурное подразделение философский факультет, кафедра социальной философии

Фамилия, имя, отчество Кристоф Вульф

Должность , руководитель Центра исторической антропологии Свободного ун-та Берлина

Ученая степень, звание профессор

Страна, город, название организации приглашенного Германия, Берлин, Свободный университет г. Берлина________________________

Тема Количество часов Дата   Аудитория
1. Эволюционная антропология/ философская антропология. Универсальные перспективы 25.10, 14-40 2.физ
2. Историческая антропология /Культурная антропология. Частные перспективы 25.10, 16-10 342, гл.з
3. Логика и страсть. Трансдисциплинарный и транскультурный подход 25.10, 17-40 019, гл.з
  Человеческое тело. Ожидание смерти и воспоминание о рождении   26.10, 16-10 355, гл.з
  Динамика и перформативность ритуалов. Берлинская школа изучения ритуалов 26.10, 17-40 355, гл.з
  Жесты: мизансцена, постановка, практика 26.10, 19-00 355, гл.з
  Как создается семейное счастье? Этнографические исследования в Германии и Японии 27.10, 13-05 342, гл.з
  Культурное обучение как миметическое обучение 27.10, 16-10 342, гл.з
  Миметическое творчество и поддержание эмоций. Похороны Майкла Джексона 27.10, 17-40 2.физ
  Создание человеческого измерения посредством воображения 28.10, 10-00 Конф.-зал библиотеки
к Образование в глобализирующемся мире. Межкультурная задача 28.10, 11-30 Конф.-зал библиотеки
  Риски и вызовы будущего. Образование за мир, культурное разнообразие и устойчивое развитие 28.10, 14-30 Конф.-зал библиотеки

 



 

Банковская система — форма организации функционирования в стране специализи­рованных кредитных учреждений, сложившаяся исторически и закрепленная законами.

Как денежная и финансовая системы, банковская система несет на себе значитель­ные национальные черты, она формируется и преобразуется под влиянием целого ком­плекса факторов, характерных для данного региона: природные и географические усло­вия, климат, национальный состав населения, его занятие и промыслы, контакты с сосе­дями, торговые пути и др.

Банковская система функционирует на базе законов и соответствующих подзакон­ных актов, образующих в совокупности инфраструктуру, закрепляющую и регулирую­щую ее.

Понятие «банковская система» предполагает в первую очередь определение ее со­ставляющих: банки и система.

Банки представляют собой организационные структуры финансового рынка, кре­дитные организации, в задачу которых входит комплексное осуществление операций по привлечению временно свободных средств, накоплений и сбережений физических и юридических лиц, по размещению аккумулированных ресурсов от своего имени на ос­нове возвратности, срочности и платежей в соответствии с поручениями их клиентов.

Эти «родовые» признаки банков отражают, по сути, три базовых направления, по которым исторически сформировались банки. С определенной долей условности к этим направлениям можно отнести (в хронологическом порядке) деятельность храмов по обеспечению сохранности передаваемых им сбережений, ростовщические кредиты, трансформируемые в коммерческие, «расчетная» и валютная деятельность меняльных контор (скамей). Последние и дали название этим учреждениям.

На бытовом уровне понятие «банки» чаще всего ассоциируются с хранилищем де­нег, однако более широкий подход предполагает изучение разнообразных точек зрения на это понятие.

В частности, банки рассматриваются как посредническая организация, торговое предприятие, хозяйственный субъект, учреждения, организационная структура, собственность, владение, субъект финансового рынка, объект надзора и регулирования.

И, наконец, банки являются носителями комплекса специфических функций, таких, как перераспределительная, контрольная, экономии издержек обращения, но, прежде всего, аккумуляции средств, посредническая функция регулирования денежного оборота.

Рассмотрение всей совокупности банков именно как системы предполагает соблю­дение ряда условий, по сути являющихся базовыми признаками самого понятия «систе­ма», К ним относятся:

— наполненность, т.е. наличие ряда элементов, в целом образующих совокупность, относительно замкнутый комплекс;

— структурированность, группировка отдельных элементов в сегменты, уровни со сходными классификационными признаками;

— целостность системы как наличие элементов, причем достаточное для стабильно­го, эффективного функционирования всех необходимых сегментов, уровней и всех эле­ментов, их наполняющих;

— взаимосвязанность, взаимодействие между отдельными элементами.

Банковская система — понятие неоднозначное, она может быть рассмотрена и структурирована с ряда позиций, и в первую очередь, как организационная и как инсти­туциональная схема. Кроме того, важное значение имеют подходы, структу­рирующие систему по функциям, взаимосвязям, иерархии, а также по специализации (ориентации), комплексности, сферам реализации и т.д.

Институциональная схема включает совокупность отдельных элементов — органи­зационных структур (учреждений и организаций), прямо или косвенно участвующих в банковской деятельности, их состав, задачи, функции и операции, сферы, взаимосвязи и иерархию.

Организационная схема объединяет функционирующие в данном государстве виды и формы кредитов, в которых участвуют учреждения банковского типа. Схема структу­рируется по формам кредита и характеру участия банков.

Организационная схема банковской системы в значительной степени определяется формой кредита, в которой реализуется банковская деятельность.

 

Формы кредита, в которых реализуется банковская деятельность Характер участия учреждений банковского типа  
Банковский   Банки — ведущее звено, классификационный признак  
Потребительский, коммерческий, государствен­ный, международный   Эти формы кредита могут реализовываться и некредитными организациями, но банки доста­точно часто выступают их участниками  
Корпоративный •   В этой форме кредита банки могут участвовать в исключительных случаях  
Дружеский, соседский, родственный, коллегиональный, ростовщический   Участие банков в этих формах кредита носит полукриминальный и криминальный характер  

 

Участие кредитных организаций банковского типа в банковской форме кредита, где они выступают в роли универсальных посредников, аккумулирующих и распределяю­щих кредитные ресурсы, является для этой формы определяющим, классификационным признаком. В ней реализуются все виды сделок, в которых предусмотрено участие бан­ков. К особенностям банковской формы кредита относятся преимущественное использо­вание в качестве кредитных ресурсов не собственных, а привлеченных и заемных средств, временно высвобождаемых в процессе кредитного оборота, которые превраща­ются в капитал — прирастаемую собственность.

Ряд форм кредита предполагает возможное, но отнюдь не обязательное участие в них отдельных элементов банковской системы, например кредитных организаций бан­ковского типа.

Коммерческий кредит иногда рассматривается как кредит торговым организациям или на торговые проекты, т.е. как разновидность банковского кредита. Однако классиче­ский коммерческий кредит замкнут в предпринимательской сфере и представляет собой предоплату или отсрочку платежа при реализации продукции одним предпринимателем другому. Наиболее распространенным документом этой формы кредита является ком­мерческий вексель, и именно в операциях с векселями активно участвуют банки (учет, переучет, авалирование векселей), внедряясь в сферу коммерческого кредита. Кроме того, доступность банковского кредита снижает потребность в коммерческом кредите и наоборот.

Особенностью потребительского кредита является его некоммерческая, производ­ственная, целевая установка, отсутствие адекватных денежных потоков погашения. Это кредиты в сферу конечного потребления, получателями которых, заемщиками, в боль­шинстве случаев являются физические лица, население (за исключением инвестиций в личное товарное производство). Однако объекты потребительского кредита могут при­сутствовать и в предпринимательской сфере (имиджевые активы, обеспечение персона­ла), и в сфере финансов общественных, некоммерческих организаций (социальные про­екты), и в бюджетной сфере (бюджет текущих расходов). Кредиторами в потребитель­ском кредите выступают предпринимательские структуры, общественные организации, кредитные учреждения небанковского профиля (ломбарды, прокат и т.д.). Активно уча­ствуют в потребительском кредите и учреждения банковской системы практически всех уровней: и коммерческие банки, и кредитные кооперативы, а в отдельных случаях и центральные банки. Это могут быть и целевые кредиты (по приобретению жилья, авто­мобилей, образовательные и т.д.) и бесцелевые (на неотложные нужды).

Приобретая государственные ценные бумаги (займы и обязательства), а также кре­дитуя правительственные программы, бюджетные предприятия и организации, банки и иные элементы банковской системы принимают активное участие в государственном кредите. Кроме того, государственный кредит является направлением специализации некоторых банков, как уже функционирующих, например «Банк Москвы», так и еще создаваемых, например «Банк Развития». Необходимо также отметить, что особый ста­тус Центрального банка России и Сберегательного банка России предполагает их обяза­тельное участие в операциях государственного кредита.

Для международного кредита как кредиторы, так и заемщики могут быть представ­лены достаточно широко, от государственных официальных или специально создавае­мых организаций до предпринимательских структур и политических партий. В их числе банки и кредитные организации, а также специализированные структуры международ­ного кредита (в первую очередь Мировой банк, МВФ, МБРР и т.д.) часто играют веду­щие роли.

Для некоторых уровней организационной схемы банковской системы участие кре­дитных организаций банковского типа возможно только в особых случаях.

Корпоративный (ранее называвшийся межхозяйственным или внутриотраслевым) кредит, перемещающий, распределяющий кредитные ресурсы внутри отрасли, корпора­ции, финансово-промышленных групп (ФПГ) или иных аналогичных объединений через или под контролем соответствующих структур управления (отраслевых и т.д.), в прин­ципе не предполагает участие кредитных организаций банковского типа. Однако в со­временных условиях России существуют и числятся среди самых стабильных и эффек­тивных успешно противостоящие кризису банки с особой формой организации и владе­ния. Это так называемые «банки отрасли», входящие как подчиненное звено в отрасле­вые (корпоративные) иерархии или банки в составе ФПГ. И для тех и для других корпо­ративные (внутриотраслевые) кредиты не только возможны, но и являются приоритет­ной сферой их специализации.

Среди разнообразных форм кредита существуют и применяются, причем в опреде­ленных сферах (финансы населения) достаточно широко, такие кредиты, как древний некоммерческий, а в современном звучании— родственный, дружеский, соседский, коллегиальный кредит, который в определенной мере регулируются, но вне сферы бан­ковской правовой инфраструктуры, в первую очередь положениями Гражданского ко­декса, а также один из исторически первых — ростовщический кредит, для регулирова­ния которого уже применяется Уголовный кодекс. Эти формы кредита не предусматри­вают внешнее привлечение кредитных ресурсов кредиторами, в них применяется особый порядок структурирования и документирования ссуд, определения процентных плате­жей, методы обеспечения возврата кредитов. Все это делает практически невозможным участие в этих формах кредита банков или кредитных учреждений банковского типа, однако полностью исключить их из организационной схемы банковской системы нельзя, так как некоторые активные банковские операции несут их отдельные характерные чер­ты (кредиты акционерам, персоналу, инсайдерам, процентные ставки, намного превы­шающие среднюю норму прибыли, льготные кредиты и т.д.).

 

В отличие от организационной схемы банковской системы, построения институ­циональной схемы более разнообразны и по классификационным признакам, и по соста­ву сегментов. Поэтому в первую очередь необходимо определить общий состав элемен­тов, которые, в соответствии с принципом целостности, должны входить в банковскую систему, а также их классификационные признаки, задачи, функции, операции. В этой связи рассмотрим следующие основные структуры и признаки, определяющие институ­циональную схему банковской системы.

1. Центральные банки — самостоятельные, но подконтрольные государству кре­дитные организации, в основные задачи и функции которых входит:

—обеспечение устойчивости национальной валюты, минимизация инфляции (эмиссия наличных денег и организация их обращения, определение системы, порядка и формы расчетов, разработка и проведение единой денежно-кредитной политики, регу­лирование денежного обращения, валютное регулирование и валютный контроль);

— обеспечение эффективности и стабильности банковской системы (государствен­ная регистрация, выдача и отзыв лицензий коммерческих банков, организаций банков­ского аудита, надзор за деятельностью банков, установление правил бухгалтерского уче­та, регистрация выпуска и размещения ценных бумаг банков, не относящихся к эмисси­онным, кредитор последней инстанции коммерческих банков, банковские операции по поручению Правительства).

Организационно-правовые формы центральных банков могут по сути представлять собой унитарный банк со 100%-ным участием государства в его капитале (РФ), систему независимых банков, в совокупности выполняющих функции Центрального банка (Феде­ральная резервная система (ФРС) в США), акционерное общество с различной долей уча­стия государства или объединение типа ассоциации как с участием государства, так и без.

В организационную структуру Центрального банка России входят:

— центральный аппарат с функциональными службами, департаментами и управ­лениями;

— территориальные учреждения;

— расчетно-кассовые центры;

— полевые учреждения;

— учебные заведения.

2. Агентства по реструктуризации кредитных организаций (АРКО) как представители параллельных структур демонополизированного уровня органов банковского надзора дос­таточно широко представлены в других странах (США — Федеральная корпорация страхования депозитов; Канада — Бюро надзора за финансовыми учреждениями; Германия — Федеральное ведомство по контролю над банками; Бельгия— Банковская комиссия;

Франция — Национальный кредитный совет, Комитет кредитных учреждений и Банков­ская комиссия; Италия — Межминистерский комитет по кредитам и сбережениям, и т.д.).

АРКО учрежден Правительством и Банком России в качестве небанковской кредит­ной организации, в задачи которой входят:

— оперативная работа по взаимодействию с восстанавливаемыми банками из числа проблемных (работа с «плохими» активами, участие в управлении, оказание экономиче­ской поддержки);

— участие в проведении ликвидации (ликвидный контроль) обанкротившихся бан­ков, в том числе и по реализации имущества ликвидируемых банков.

В реализации этих задач АРКО осуществляет следующие виды деятельности:

— приобретает контрольные пакеты или долги в уставном капитале банков, утра­тивших значительную часть капитала;

— осуществляет управление этими пакетами;

— по поручению и за счет Банка России и Правительства вступает в уставные капи­талы реструктурируемых банков;

— участвует в разработке и реализации планов финансового оздоровления реструк­турируемых банков;

— участвует в реализации активов ликвидируемых банков;

— управляет проблемными и низколиквидными активами, приобретенными у бан­ков, в том числе и в целях их последующей реализации;

— привлекает инвестиции (в том числе иностранные) для реализации мероприятий

по реструктуризации;

— организовывает и участвует в процедуре банкротства и ликвидации банков, в том числе назначает конкурентных управляющих в ликвидируемые банки, а также менедже­ров в принадлежащие АРКО банки;

— привлекает финансовые ресурсы, в том числе путем выпуска ценных бумаг, для организации своей деятельности.

Организационная структура АРКО включает как обеспечивающие элементы (управление бухгалтерского учета и отчетности, финансово-экономическое управление, управление технологического обеспечения, управление делами, департамент общест­венных связей), так и функциональные:

— департамент методического обеспечения и анализа процедур реструктуризации;

— экспертный департамент;

— департамент организации антикризисного управления;

— департамент инвестиционного маркетинга;

— департамент управления активами;

— департамент сопровождения ликвидационных процедур.

Кроме АРКО можно привести и иные организации по уровню, задачам и функциям, паритетные Центральному банку, как временно действующие (Комитет по распределению иностранной финансовой поддержки проблемным банкам России) или находящиеся в перманентном процессе формирования (Федеральная корпорация по страхованию вкладов населения в коммерческих банках, Межбанковская служба безопасности и др.), так и пер­спективные. Правительство намерено создать структуру, отвечающую за взаимодействие с банковской системой. Эта структура должна заниматься банковским регулированием и надзором с помощью административных и экономических методов).

3. Банки (кредитные учреждения) с контрольным пакетом в акционерном капитале, принадлежащим государству (Центральному банку, Правительству, региональным властям), осуществляют банковскую деятельность хотя и под достаточно жестким контро­лем, но с высоким уровнем государственной гарантии, что определяет и соответственно высокий уровень доверия к ним.

Эти «государственные» банки, являясь по сути правительственными агентами, бе­рут на себя значительную нагрузку по реализации денежно-кредитной политики, в связи с чем в их функции и операции входят:

— работа с бюджетными счетами (параллельно с казначейством);

— работа со средствами спецфондов льготного кредитования;

— кредитование инвестиционных проектов, в том числе из средств Бюджета разви­тия Российской Федерации;

— операции с государственными займами;

— программы гарантии сохранности сбережений населения и т.д. Этот элемент банковской системы России представлен действующими Сбербанком РФ и «Банком Москвы», формируемым Российским банком развития. Кроме того, суще­ствуют проекты национализации части проблемных коммерческих банков, в ходе кото­рых должны дополнительно образоваться несколько системообразующих банков с госу­дарственным участием и сеть региональных банков с контрольными пакетами, принад­лежащими региональным властям.

4. Универсальные коммерческие банки (кредитные учреждения), в основе формиро­вания которых может лежать либо их величина (размер), либо их особая системообразующая роль, либо наличие у них генеральной лицензии. Отличительной чертой этих банков является осуществление полного комплекса банковской деятельности (и ее сде­лок) по привлечению и размещению ресурсов, расчетам и инвестициям, операциям с валютой, ценными бумагами, драгоценными металлами, а также депозитарные и кон­сультационные услуги. Число таких банков в России достаточно велико ввиду недиффе­ренцированных нормативных требований к универсальным и специализированным бан­кам и четко выраженной тенденции к получению генеральной лицензии.

5. Специализированные коммерческие банки (кредитные учреждения), сформиро­вавшие в своей политике определенные приоритеты деятельности. Это предполагает известные ограничения проводимых ими операций и сделок, но вместе с тем и высокий уровень качества, профессионализма и компетентности по их ведущим направлениям. Специализация банка идентифицируется в его названии, приоритетах политики или в рекламном лозунге и может иметь различные базовые классификационные признаки. Применительно к России среди последних можно выделить следующие виды специали­заций и банки-представители:

а) отраслевая специализация:

— земельные;

— торговые;

— строительные

— промышленные;

— дорожные;

— конверсионные;

— связи и информации;

— культуры и искусства и т.д.;

б) субъективная специализация:

—АвтоВАЗбанк;

' Специализация в данном случае сочетается с универсальностью банка.

— Юганскнефтебанк;

— БратскГЭСстройбанк;

в) территориальная специализация:

— Дальневосточный;

— Сахакредитбанк;

— Сибирский банк;

— Воронеж;

— Кубаньбанк и т.д.

г) территориально-отраслевая специализация:

— Сибирьгазбанк;

— Москомприватбанк;

— Юганскнефтебанк;

— Тольятгихимбанк;

—Ульяновсквнешторгбанк и т.д.

д) функциональная специализация:

— инновационные;

— инвестиционные;

— сберегательные;

— кредитные;

— ипотечные;

— трастовые и т.д.;

е) территориально-функциональная специализация:

— Татинвестбанк;

— Сахакредитбанк;

— Московский кредитный банк;

— Югинвестбанк и т.д.;

ж) функционально-отраслевая специализация:

— Стройинвестбанк;

— Инвестторгбанк;

— Социнвестбанк и т.д.;

з) клиентская функциональная специализация:

— биржевые;

— страховые;

— венчурные и т.д. («Профбанк», «Негоциант-банк» и др.);

и) национально-религиозная, экологическая и др. подобные специализации:

— славянские;

— мусульманские;

— паломнические;

— христианские и т.д.

Банки—представители таких специализаций обычно характеризуются специфиче­скими приоритетами политики («Славянский кредит», «Держава», «Кедр», «Мастер-банк», «Контакт», «Петр Первый», «Мир», «Стратегия», «Славянбазар», «Русский гене­ральный банк», «Солидарность», «Русславбанк», «Эталонбанк», «Казакбанк» и др.)

6. Небанковские кредитные организации — НКО (кредитные учреждения банков­ского типа) имеют несколько классификационных признаков:

 

Сфера Классификационный признак НКО
Банковские операции, составляющие совокуп­ность признаков банка   Обязательно осуществляют одну или несколько операций, но не в полном комплексе  
Традиционные банковские операции   Осуществляют операции в любом наборе с уче­том признака А. — См. ниже.  
Иные банковские операции и услуги (сделки)   Осуществляют операции как дополнительно к банковским операциям, так и в неполном ком­плексе  
Нормативные требования   Менее жесткие, чем у банков  

 

Кредитные организации этого типа имеют различные основы их формирования я функционирования. Рассмотрим их подробнее.

А. Особая форма организации (на кооперативных началах, как с долевым участием, так и без паевых взносов), когда специализированные кредитные ресурсы размещаются в замкнутом круге среди членов организации с возможным минимальным внешним ин­вестированием в наиболее устойчивые активы. В число пайщиков могут входить жители конкретного города, работники завода, предприятия, лично знающие друг друга люди и т.д. К ним можно отнести, с учетом исторического опыта России, мирские кассы, ком­мунальные кассы, валютные кассы, ссудные капиталы, ссудные кассы и более современ­ные ссудно-сберегательные товарищества, общества взаимного кредита и кредитные союзы.

Б. Особая форма организации в комплексе с профессиональной специализацией предполагает не только ограниченный круг участников, но и четко очерченную сферу проведения операций кредитным учреждением. К ним, с учетом исторического опыта России, можно отнести сельские (волостные) банки как сословно-профессиональные кредитные учреждения и современные кредитно-потребительские кооперативы бюджет­ной сферы, образования, медицины, пенсионных фондов, строительные ссудосберегательные кассы (эксперимент Москвы) и т.д.

В. Узкая профессиональная специализация ограничивает сферу проведения операций кредитным учреждением одной-двумя позициями. Например, это расчетные (клиринго­вые) центры, лизинговые фирмы, трастовые компании, факторинговые фирмы и др.

Кроме перечисленных выше отличий, кредитные организации, входящие в банков­скую систему, различаются по формам собственности (государственные, частные, коо­перативные, смешанные), страновой принадлежности капитала (российские, иностран­ные, совместные), территориальному признаку (региональные, межрегиональные, на­циональные, международные, заграничные), организационно-правовым формам (паевые, акционерные), степени независимости (самостоятельные, дочерние, сателлиты, уполно­моченные, консорциальные), величине капитала и др.

Организационные структуры кредитных учреждений могут включать центральный аппарат (офис), а также различные по функциям, операциям и делегированным полно­мочиям отделения, филиалы, представительства (в том числе за рубежом), валютообменные пункты, банкоматы, терминалы, учебные заведения, журналы, газеты и т.д.

7. Коммерческие объединения кредитных организаций (группы и холдинги) или объединения с участием кредитных организаций (финансово-промышленные группы) создаются путем заключения соответствующего договора между участниками с делеги­рованием полномочий или на основе участия ведущей структуры в капитале подчинен­ных. Целью подобных объединений могут быть как проведение совместных операций, реализация совместных программ и проектов с целью извлечения прибыли, развития, успешной нейтрализации конкурентов, управления рисками, так и «ухода» от обяза­тельств (метод «пустой скорлупы»), В качестве примера таких объединений можно при­вести группы «Альфа-капитал» и т.д. Будучи от­носительно самостоятельными (паритетно банкам), банковские коммерческие объедине­ния имеют иногда достаточно жесткую административную иерархию.

8. Филиалы и представительства иностранных банков действуют в Российской бан­ковской системе в рамках жестких надзорных нормативов и квот, ограничиваясь обычно обслуживанием зарубежных физических и юридических лиц /

9. Банковская инфраструктура объединяет учреждения и организации (внешний блок), профессионально обеспечивающие деятельность любых кредитных организаций всех уровней, проведение ими банковских операций и сделок. В задачу учреждений бан­ковской инфраструктуры входит:

—информационное обеспечение (специализированные информационно-аналитические центры банковской информации; рейтинговые агентства; специализиро­ванные газеты, журналы, информационные бюллетени; кредит-бюро и т.д.);

— научное, правовое и методическое обеспечение (научные центры и лаборатории, учебные заведения);

— кадровое обеспечение (высшие и средние учебные заведения банковской специа­лизации, учебные центры, фирмы и агентства по набору и обучению кадров);

—обеспечение средствами связи, коммуникации (специализированные, компью­терные, космические системы связи и др.);

—обеспечение безопасности деятельности, экономической информации и т.д. (агентства безопасности, специализирующиеся в кредитной сфере, фирмы технической защиты информации и др.).

В этом же направлении действуют и некоммерческие союзы и ассоциации кредитных организаций (Ассоциация российских банков, Московский банковский союз и т.д.), кото­рые представляют интересы своих членов, удовлетворяют их научные, профессиональные и информационные интересы, развивают межрегиональные и международные связи.

Кроме того, аналогичные потребности кредитных организаций обеспечиваются внутренними службами банков (внутренний блок) по большей мере на дополнительной основе, но иногда и на альтернативной.

Согласно сложившимся научным представлениям и административной практике, институциональная схема построения банковской системы России базируется на не­скольких принципах.

1. Иерархический принцип выделяет в банковской системе отдельные сегменты— уровни на основе отношений внеструктурной подчиненности.

Верхний (управляющий) иерархический уровень включает Центральный банк Рос­сии и АРКО как представитель параллельных структур банковского надзора, а нижний (управляемый) — все типы кредитных учреждений и в определенной мере коммерче­ские банковские объединения и банковскую инфраструктуру.

Это наиболее общепризнанный принцип структуризации современной банковской системы России. Если сам процесс создания целостной банковской системы, видимо, еще далек от завершения, то по крайней мере начало его определяется достаточно четко. Переход от одноуровневой к двухуровневой системе начался в 1987 г. на базе «Строй­банка», «Внешэкономбанка» и сети сберкасс ЦБ России и пяти специализированных государственных банков («Внешэкономбанк», «Промстройбанк», «Агропромбанк», «Жилсоцбанк», «Сберегательный банк»). Для второго уровня более значим 1988 г., ко­гда в соответствии с законом «О кооперации в СССР» начали создаваться первые ком­мерческие банки. С точки зрения правовой инфраструктуры современная банковская система сформировалась в 1990 г., когда практически параллельно были приняты союз­ные («О госбанке СССР», «О банках и банковской деятельности в СССР») и российские («О Центральном банке РСФСР» (Банке России), «О банках и банковской деятельности в РСФСР») законы, официально утвердившие двухъярусную банковскую систему и за­ложившие основу ее дальнейшего развития.

2. Функционально-регулирующий принцип разделяет банковскую систему на отдель­ные сегменты— слои на основе функций, приданных им элементам, специализации проводимых ими операций, а также характера надзорных требований, жесткости полно­мочий банковского надзора.

3. Организационно-иерархический принцип предполагает максимально полное выде­ление всех функционирующих элементов банковской системы, в том числе и входящих во внутренние иерархии: центральный аппарат, территориальные отделения, полевые учреждения, расчетно-кассовые центры, учебные заведения и центры, отделения, фи­лиалы, представительства, информационно-аналитические центры, газеты и журналы, обменные пункты, банкоматы и др.

в деятельности всех вышеперечисленных элементов банковской системы как в организационной, так и в институциональной схеме активно участвуют, причем на всех иерархических уровнях, и внешние структуры. Прежде всего это органы законодательной власти, налоговые службы, ФКЦБ, Прокуратура, суды. Но­тариат, ФСБ, МВД, Госстандарт России (технический комитет «Методологическое обеспечение банковского дела»), пожарные, экологические, санитарные инспекции, ар­хитектурного надзора и др., а также структуры банковского аудита, общественные орга­низации клиентов и вкладчиков банков, средства массовой информации и рекламы, ча­стные сыскные агентства, благотворительные организации и др.

Итак, с точки зрения количественного наполнения иерархических уровней, цело­стности системы и наличия адекватных взаимосвязей банковская система России на­ходится в стадии формирования, и пока, как мы уже отмечали, этот процесс далек от завершения.

Признак классификации систем Наименование систем Содержание систем
1. Степень взаимодействия системы с внешней средой     1.1 Изолированные системы (искусственные)     Системы, не имеющие с внешней средой прямой и обратной связи, без входа и выхода  
1.2 Закрытые системы     Системы, имеющие с внешней средой только одну связь (в систему или из нее)  
1.3 Открытые системы   Системы, имеющие с внешней средой прямую и обратную связи, вход и выход  
2. Размер системы     2.1 Малые системы Системы с количеством единичных компонентов менее 30
2.2 Средние системы     Системы с количеством единичных компонентов от 31 до 300    
2.3 Большие сложные системы Системы с количеством единичных компонентов свыше 301  
3 Виды систем     3.1 Биологические системы Живые организмы    
3.2 Технические системы Изделия, состоящие из сборочных единиц и деталей, выполняющие заданные функции
3.3 Социально- экономические системы     Комплексные структуры, состоящие из экономических производственно- технических и социальных структур, выполняющих различные цели  
Производственные системы (как разновидность социально- экономических систем) Структуры, состоящие из функциональных и производственных подразделений, выпускающие продукцию или выполняющие услуги производственного характера  
3.4 Экосистема Совокупность факторов природной среды методов и средств обеспечения ее жизнедеятельности по сохранению планеты Земля
4. Степень свободы системы по отношению к внешней среде   4.1 Относительно самостоятельные юридически и физически независимые системы Системы, функционирующие самостоятельно и выполняющие заданные функции или цели  
4.2 Несамостоятельные системы (подсистемы) Системы (подсистемы), входящие в глобальную систему жестко как неотъемлемый компонент  
5. Уровень специализации системы   5.1 Комплексные системы Системы выполняющие весь комплекс функций или работ по стадиям жизненного цикла объекта
5.2 Специализированные системы     Системы, специализирующиеся на выполнении одной функции или работы на одной стадии жизненного цикла объекта  
6. Продолжительность функционирования системы   6.1 Системы кратковременного действия (жизни) Системы, функционирующие короткий промежуток времени, или разового применения  
6.2 Дискретные системы     Системы, функционирующие определенный промежуток (интервал) времени  
6.3 Долговременные системы Системы, длительность функционирования которых практически не ограничена  
7. Способ описания системы     7.1 Детерминированные (функциональные) Системы, поведение которых точно описывается однозначной функцией    
7.2 Статистические (вероятностные) Системы, поведение которых описывается в терминах распределения случайных величин или вероятностей
7.3 Нечеткие (описательные) Системы, поведение которых описывается качественно, а не количественно
8. Тип используемых в субстанции системы величин 8.1 Физические Системы, имеющие вещественную субстанцию
  8.2 Абстрактные   Системы, имеющие логическую, математическую и другие виды невещественной субстанции

 


Выделяют следующиеосновные свойства системы:

· Эмерджентностъ несводимость свойств отдельных элементов и свойств системы в целом.

· Целостность– это общесистемное свойство, заключающееся в том, что изменение любого компонента системы оказывает воздействие на все другие ее компоненты и приводит к изменению системы в целом; и наоборот, любое изменение системы отзывается на всех компонентах системы.

· Делимость– возможна декомпозиция системы на подсистемы с целью упрощения анализа системы.

· Коммуникативность. Любая система функционирует в окружении среды, она испытывает на себе воздействия среды и, в свою очередь, оказывает влияние на среду.

· Системе присуще свойство развиваться,адаптироваться к новым условиям путем создания новых связей, элементов со своими локальными целями и средствами их достижения.

· Иерархичность.Иерархичность системысостоит в том, что она может быть рассмотрена как элемент системы более высокого порядка, а каждый ее элемент, в свою очередь, является системой.

· Важным системным свойством является системная инерция,определяющая время, необходимое для перевода системы из одного состояния в другое при заданных параметрах управления.

· Многофункциональность– способность сложной системы к реализации некоторого множества функций на заданной структуре, которая проявляется в свойствах гибкости, адаптации и живучести.

· Гибкость– это свойство системы изменять цель функционирования в зависимости от условий функционирования или состояния подсистем.

· Адаптивность– способность системы изменять свою структуру и выбирать варианты поведения сообразно с новыми целями системы и под воздействием факторов внешней среды. Адаптивная система – такая, в которой происходит непрерывный процесс обучения или самоорганизации.

· Надежность это свойство системы реализовывать заданные функции в течение определенного периода времени с заданными параметрами качества.

· Безопасность способность системы не наносить недопустимые воздействия техническим объектам, персоналу, окружающей среде при своем функционировании.

· Уязвимость– способность получать повреждения при воздействии внешних и (или) внутренних факторов.

· Структурированность – поведение системы обусловлено поведением ее элементов и свойствами ее структуры.

· Динамичность – это способность функционировать во времени.

 

Пусть дана некоторая перестановка обозначающая последовательность прохожде-

ния вершин графа размерности n. Очевидно, что ее можно представить в виде p1, p2, …, pn. Для получения кода перестановки выписывается последовательность чисел от 1 до n. Обозначим ее K. Далее закодированный цикл будет составляться следующим образом: выбирается очередной элемент подстановки s, находится его номер в последовательности K и записывается в закодированный цикл.

Из последовательности K число подстановки s вычеркивается. Так продолжается до

тех пор, пока не будут вычеркнуты все числа или, что то же самое, не будут пройдены все числа в перестановке. Обратное преобразование проводится аналогично: выписывается последовательность чисел от 1 до n. Очередной элемент закодированного цикла – это номер числа в этой последовательности. Найденное число записывается в гамильтонов цикл и вычеркивается из последовательности. Такое кодирование позволяет ввести стандартные операторы скрещивания и мутации.

Оператор выбора основывается на принципе рулетки.

Оператор скрещивания. Выбираются две родительские особи и точка (точки) разрыва. Точки разрыва делят родителей на 2 и более частей. Первый потомок получает первую часть от первой родительской особи, вторую – от второй, третью – от первой и т.д. Второй – наоборот: первую часть – от второй родительской особи, вторую – от первой, третью – от второй и т.д.

Оператор мутации. Выбирается особь, над которой будет проводиться мутация. В ней случайным образом выбирается мутирующий ген и новое значение гена после мутации. Пусть мутирует i-й ген и новое значение гена равно bi, тогда должно выполняться

неравенство: bi < n – i + 1. В этом случае при раскодировании получится перестановка из n элементов.

 

По степени распределённости отличают:

· настольные или локальные ИС, в которых все компоненты находятся на одном компьютере;

· распределённые ИС, в которых компоненты распределены по нескольким компьютерам.

Распределённые ИС, в свою очередь, разделяют на:

· файл-серверные ИС (В файл-серверных ИС база данных находится на файловом сервере, а СУБД и клиентские приложения находятся на рабочих станциях)

· клиент-серверные ИС (В клиент-серверных ИС база данных и СУБД находятся на сервере, а на рабочих станциях находятся клиентские приложения)

 

По степени автоматизации ИС делятся на:

· автоматизированные: информационные системы, в которых автоматизация может быть неполной (то есть требуется постоянное вмешательство персонала);

· автоматические: информационные системы, в которых автоматизация является полной, то есть вмешательство персонала не требуется или требуется только эпизодически.

«Ручные ИС» («без компьютера») существовать не могут

По характеру обработки данных ИС делятся на:

· информационно-справочные, или информационно-поисковые ИС, в которых нет сложных алгоритмов обработки данных, а целью системы является поиск и выдача информации в удобном виде;

· ИС обработки данных, или решающие ИС, в которых данные подвергаются обработке по сложным алгоритмам.

· Экономическая информационная система — информационная система, предназначенная для выполнения функций управления на предприятии.

· Медицинская информационная система — информационная система, предназначенная для использования в лечебном или лечебно-профилактическом учреждении.

· Географическая информационная система — информационная система, обеспечивающая сбор, хранение, обработку, доступ, отображение и распространение пространственно-координированных данных (пространственных данных).

Классификация по охвату задач (масштабности)

Персональная ИС предназначена для решения некоторого круга задач одного человека.

· Групповая ИС ориентирована на коллективное использование информации членами рабочей группы или подразделения.

· Корпоративная ИС в идеале охватывает все информационные процессы целого предприятия, достигая их полной согласованности, безызбыточности и прозрачности. Такие системы иногда называют системами комплексной автоматизации предприятия.

 

Свойства информационных систем:

· любая ИС может быть подвергнута анализу, построена и управляема на основе общих принципов построения сложных систем;

· при построении ИС необходимо использовать системный подход;

· ИС является динамичной и развивающейся системой;

· ИС следует воспринимать как систему обработки информации, состоящую из компьютерных и телекоммуникационных устройств, реализованную на базе современных технологий;

· выходной продукцией ИС является информация, на основе которой принимаются решения или производятся автоматическое выполнение рутинных операций;

· участие человека зависит от сложности системы, типов и наборов данных, степени формализации решаемых задач.

Алгоритм — набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное число действий.

Алгоритм деления отрезка пополам с помощью циркуля и линейки

1. Строим окружность с центром в точке А и радиусом R.

2. Окружность с центром в точке В и радиусом R.

3. Окружности пересекаются в точках С и С1.

4. Прямая СС1 пересекает отрезок АВ в точке О. Это искомая точка.

 

 

 

 

Свойства алгоритмов:

1. Дискретность (разделённый, прерывистый, раздельность) (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);

2. Детерминированность (определенность, точность) (любое действие должно быть строго и недвусмысленно определено в каждом случае);

3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);

4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);

5. Результативность (отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях).

Виды алгоритмов:

1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);

2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено заданное условие);

3. Разветвляющийся алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий);

4. Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя).

На практике наиболее распространены следующие формы представления алгоритмов:

· В устной форме.

· В письменной форме на естественном языке.

· В письменной форме на формальном языке.

· Для более наглядного представления алгоритма широко используется графическая форма блок-схема, которая составляется из стандартных графических объектов.

 

 

puts("Файл сохранен!"); //Удачная запись файла

free(array);//Освобождение выделенной динамической памяти

return 0; //Выход

}

/* ------------ Функция загрузки файла --------------------

Параметры: name - имя файла

arr - указатель на массив (по ссылке)

num - число элементов в массиве (по ссылке)

Возвращаемое значение: 0 - успешное завершение

1 - ошибка открытия файла

2 - ошибка выделения памяти

-------------------------------------------------------- */

int LoadFile(const char*name, int **arr, int *num)

{

FILE *file = fopen(name,"rb");//Открытие файла для чтения

if(!file) return 1; //Если открыть не удалось, то выход

//Установка файлового указателя в конец файла

fseek(file,0,SEEK_END);

//Определение числа элементов в файле

int n = ftell(file)/sizeof(int);

//Установка файлового указателя в начало файла

fseek(file,0,SEEK_SET);

//Выделение динамической памяти

int *ptr = (int *)calloc(n,sizeof(int));

//Если память не выделилась, то закрываем файл и выход

if(!ptr) {fclose(file); return 2;}

//Считываем файл в динамически созданный массив

fread(ptr,sizeof(int),n,file);

fclose(file); //Закрываем файл

//Записываем значения размера массива и указателя на

//массив в парамеры, переданные по ссылке

*num = n; *arr = ptr;

return 0; //Выход

}

/* --------------- Функция записи файла ------------------

Параметры: name - имя файла,

arr - указатель на массив,

num - количество элементов

Возвращаемое значение: 0 - успешное завершение

1 - ошибка записи в файл

------------------------------------------------------- */

int SaveFile(const char*name, int *arr, int num)

{

//Открытие файла для записи

FILE *file = fopen(name,"wb");

//Если файл открыть не удалось, то выход

if(!file) return 1;

fwrite(arr,sizeof(int),num,file); //Запись данных в файл

fclose(file); //Зыкрываем файл

return 0; //Выход

}

/* -------- Функции сравнения двух элементов --------------

Параметры: два элемента следующие по порядку

Возвращаемое значение: 1 - необходима перестановка

0 - перестановка не нужна

-------------------------------------------------------- */

int CmpInc(int a,int b) //По возрастанию

{

if(a>b) return 1;

return 0;

}

int CmpDec(int a,int b) //По убыванию

{

if(a<b) return 1;

return 0;

}

/* --------------- Функция сортировки ---------------------

Параметры: arr - указатель на массив элементов,

num - число элементов в массиве,

cmp - указатель на функцию сравнения.

Реализован алгоритм сортировки пузырьком с оптимизацией

-------------------------------------------------------- */

void Sort(int *arr,int num, int (*cmp)(int,int))

{

int last = num;

while(last>0){

int pos = 0;

for(int i=0;i<last-1;i++)

if(cmp(arr[i],arr[i+1])){

int tmp=arr[i]; arr[i]=arr[i+1]; arr[i+1]=tmp;

pos = i+1;

}

last = pos;

}

}

Задача 8.2: Дан бинарный файл, содержащий вещественные числа (тип double). Переписать файл, упорядочив хранящиеся в нем значения. Имя файла и направление сортировки передаются в параметрах командной строки. Направление сортировки передается в формате: dir:inc (по возрастанию) или dir:dec (по убыванию). Алгоритм сортировки реализовать так, чтобы минимизировать объем данных из файла в оперативной памяти.

Программа для задачи

#include <stdio.h>//Библиотека функций ввода и вывода

#include <string.h>//Библиотека функций обработки строк

#include <stdlib.h>//Библиотека стандартных функций

/* -------------- Главная функция main ----------------- */

int main(int argc, char *argv[])

{ //Если параметров меньше трех, то выход из программы

if(argc < 3) {puts("Мало параметров!"); return0;}

char name[50] = ""; //Имя исходного файла

int dir = -1; //Направление сортировки

//Цикл обработки параметров командной строки

for(inti=1;i<argc;i++){

//Преобразование символов строки к нижнему регистру

_strlwr(argv[i]);

//Если это параметр направления сортировки по

//возрастанию, то переменной dir присваиваем - ноль

if(strcmp(argv[i],"dir:inc")==0) dir = 0;

//Если это параметр направления сортировки по

//убыванию, то переменной dir присваиваем - единица

else if(strcmp(argv[i],"dir:dec")==0) dir = 1;

//В противном случае: это имя файла, которое

//копируем в переменную name

elsestrcpy(name,argv[i]);

}

//Если имя файла не найдено в параметрах, то вывод

//сообщения и выход из программы

if(strcmp(name,"")==0)

{puts("Имя файла не указано!"); return 0;}

//Если направление сортировки не найдено, то вывод

//сообщения и выход из программы

if(dir == -1)

{puts("Направление сортировки не указано!"); return 0;}

//Открытие файла для чтения и записи

FILE *file = fopen(name,"rb+");

//Если файл открыть не удалось, то вывод сообщения и

//выход из программы

if(!file) {puts("Невозможно открыть файл!"); return 0;}

//Файловый указатель устанавливаем в конец файла

fseek(file,0,SEEK_END);

//Определяем количество элементов в файле

int size = ftell(file)/sizeof(double);

/* ------------------------------------------------------

Реализован алгоритм поиска максимального или минимального

элемента (в зависимости от направления сортировки)

------------------------------------------------------ */

//Цикл: пока есть не упорядоченные элементы в файле

while(size>0){

//Устанавливаем файловый указатель на начало файла

fseek(file,0,SEEK_SET);

//Индекс ind и значение value найденного максимума

int ind = 0; //(минимума) в файле

double value = 0.0;

//Считываем первое значение в файле

fread(&value,sizeof(double),1,file);

//Цикл по всем не упорядоченным элементам в файле

for(int i=1;i<size;i++){

double cur; //Объявляем локальную переменную

//и считываем в нее следующее значение из файла

fread(&cur,sizeof(double),1,file);

//Если сортировка по возрастанию и найден новый

if(((dir==0)&&(cur>value))|| //максимум

//Если сортировка по убыванию и найден новый

((dir==1)&&(cur<value))){ //минимум

//Сохраняем значение в переменной value и

value = cur; ind = i;//позицию в переменной ind

}

}

//Если найденный максимум (или минимум) находится не

//в конце файла, то осуществляем его перестановку с

if(ind != size-1){//последним рассматриваемым элементом

double tmp; //Локальная переменная

//Установка файлового указателя на последний элемент

fseek(file,(size-1)*sizeof(double),SEEK_SET);

//Считываем значение последнего элемента в tmp

fread(&tmp,sizeof(double),1,file);

//Установка файлового указателя на последний элемент

fseek(file,(size-1)*sizeof(double),SEEK_SET);

//Записываем значение максимума (или минимума)

fwrite(&value,sizeof(double),1,file);

//Установка файлового указателя на позицию максимума

fseek(file,ind*sizeof(double),SEEK_SET); //(минимума)

//Записываем значение из tmp на позицию максимума

fwrite(&tmp,sizeof(double),1,file); //(минимума)

}

size--; //Уменьшаем число рассматриваемых элементов

}

fclose(file); //Закрываем файл

return 0; //Выход

}

Задача 8.3: В текстовом файле содержатся записи с информацией о студентах: фамилия, имя, отчество (строки, максимум 15 символов), номер зачетной книжки (целое шестизначное число), средний балл (целое число от 1 до 10). Каждая запись содержится в отдельной строке, поля разделяются одним или несколькими пробелами. Упорядочить файл по значению одного из полей. Имя файла, поле и направление сортировки указываются в параметрах командной строки. Поле сортировки: SURNAME (фамилия), NAME (имя), PATRONYMIC (отчество), NUMBER (номер зачетной книжки), RATE (средний балл). Направления сортировки: INC - по возрастанию, DEC - по убыванию.

Программа для задачи

#include <stdio.h> //Библиотека функций ввода и вывода

#include <string.h> //Библиотека функций обработки строк

#include <stdlib.h> //Библиотека стандартных функций

typedef struct{ //Объявление структуры

char fio[3][16]; //Поля: фамилия, имя, отчество

int number,rate; //Поля: номер книжки и средний балл

} STUDENT;

//Функция загрузки списка из файла

int LoadList(const char*,STUDENT **,int*);

//Функция записи списка в файл

int SaveList(const char*,STUDENT *,int);

//Функция сортировки

void Sort(STUDENT*,int,int,int);

/* ------------- Главная функция main ------------------ */

intmain(int argc, char *argv[])

{ //Если параметров менее четырех, то вывод сообщения и

if(argc < 4) {puts("Мало параметров!"); return 0;}//выход

char name[50] = ""; //Название файла

int dir = -1, field = -1; //Направление и поле сортировки

//Разбор параметров командной строки

for(int i=1;i<argc;i++){

_strlwr(argv[i]); //Преобразование к нижнему регистру

//Сравнение со всеми ключами и установка значений

if(strcmp(argv[i],"inc")==0) dir = 0;

else if(strcmp(argv[i],"dec")==0) dir = 1;

else if(strcmp(argv[i],"surname") == 0) field = 0;

else if(strcmp(argv[i],"name") == 0) field = 1;

else if(strcmp(argv[i],"patronymic") == 0)

field = 2;

else if(strcmp(argv[i],"number") == 0)

field = 3;

else if(strcmp(argv[i],"rate") == 0)

field = 4;

else strcpy(name,argv[i]);//Имя файла

}

//Если имя файла не указано - вывод сообщения и выход

if(strcmp(name,"")==0)

{puts("Имя файла не указано!"); return 0;}

//Если направление не указано - вывод сообщения и выход

if(dir == -1)

{puts("Направление сортировки не указано!"); return 0;}

//Если поле не указано - вывод сообщения и выход

if(field == -1)

{puts("Поле сортировки не указано!"); return 0;}

STUDENT *list = NULL; //Указатель на список

int num = 0; //Число элементов в списке

//Вызов функции чтения списка из файла

switch(LoadList(name,&list,&num)){

//Если файл не существует или его имя указано неверно

case 1: {puts("Can\'t open file!"); return 0;}

//Если недостаточно динамической памяти для обработки

case 2: {puts("Few memory!"); return 0;}

}

Sort(list,num,field,dir); //Сортировка списка

//Вызов функции записи списка в файл и вывод сообщения

if(SaveList(name,list,num))

puts("Список записать не удалось!");

puts("Список был записан в файл!");

free(list); //Освобождение памяти

return 0; //Выход

}

/* --------- Функция добавления записи в список ----------

Параметры: list - указатель на список (по ссылке)

num - количество записей в списке (по ссылке)

value - значение, добавляемое к списку.

Возвраащемое значение: 1 - успешное завершение

0 - нехватка памяти

------------------------------------------------------- */

int Add(STUDENT **list,int *num, STUDENT value)

{

STUDENT *tmp = //Перевыделение памяти под список

(STUDENT*)realloc(*list,(*num+1)*sizeof(STUDENT));

if(!tmp) return 0; //Если не удалось выделить - выход

tmp[*num] = value; //Записываем новый элемент в список

(*num)++; //Увеличиываем число элементов

*list = tmp; //Сохраняем новое значение указателя

return 1; //Выход

}

/* --------- Функция загрузки списка из файла ------------

Параметры: name - имя файла,

list - указатель на список (по ссылке),

num - число записей в списке (по ссылке)

Возвращаемое значение: 0 - успешное завершение,

1 - файл не найден

2 - не хватает динамической памяти

-------------------------------------------------------- */

int LoadList(const char*name, STUDENT **list, int *num)

{

FILE *file = fopen(name,"r");//Открытие файла для чтения

if(!file) return 1; //Если открыть не удалось, то выход

while(!feof(file)){ //Цикл: пока не конец файла

STUDENT val; //Локальная переменная

int res = 1;

//Считываем строку и заносим в список

if(fscanf(file,"%s %s %s %d %d", //Формат

&val.fio[0],&val.fio[1],&val.fio[2],//ФИО

&val.number, //Номер книжки

&val.rate //Средний балл

)==5) res = Add(list,num,val);

//Если добавить запись в список не удалось, то

if(!res) {fclose(file); return 2;} //выход

}

fclose(file); //Закрытие файла

return 0; //Выход

}

/* --------- Функция записи списка в файл ---------------

Параметры: name - имя файла

list - указатель на список

num - количество записей в списке

Возвращаемое значение: 0 - успешное завершение

1 - ошибка создания файла

------------------------------------------------------ */

int SaveList(const char*name, STUDENT *list, int num)

{

FILE *file = fopen(name,"w"); //Открытие файла для записи

if(!file) return 1; //Если открыть не удалось, то выход

for(int i=0;i<num;i++) //Цикл: запись списка в файл

fprintf(file,"%-15s %-15s %-15s %6d %2d\n",

list[i].fio[0],list[i].fio[1],list[i].fio[2],

list[i].number,list[i].rate);

fclose(file); //Закрытие файла

return 0; //Выход

}

/* ---------- Функция сравнения двух элементов -----------

Параметры: st1, st2 - два элемента для сравнения

field - номер поля, по которому сравниваются

dir - направление сравнения

Вовзращаемое значение: > 0 - больше,

< 0 - меньше,

= 0 - равно

----------------------------------------------------- */

int Cmp(STUDENT st1,STUDENT st2, int field, int dir)

{

if(!dir){ //Если сравнение по возрастанию

//Возвращаем значение в соответствии с номером поля

switch(field){

case 0: return strcmp(st1.fio[0],st2.fio[0]);

case 1: return strcmp(st1.fio[1],st2.fio[1]);

case 2: return strcmp(st1.fio[2],st2.fio[2]);

case 3: return st1.number - st2.number;

case 4: return st1.rate - st2.rate;

}

}else{ //Если сравнение по убыванию

//Возвращаем значение в соответствии с номером поля

switch(field){

case 0: return strcmp(st2.fio[0],st1.fio[0]);

case 1: return strcmp(st2.fio[1],st1.fio[1]);

case 2: return strcmp(st2.fio[2],st1.fio[2]);

case 3: return st2.number - st1.number;

case 4: return st2.rate - st1.rate;

}

}

return 0; //Выход

}

/* ---------- Функция сортировки (внутренняя) ------------

Алгоритм сортировки: быстрый алгоритм Хоара

Параметры: list - указатель на список

iLo, iHi - нижний и верхний индексы

field - номер поля, по которому сравниваются

dir - направление сравнения

-------------------------------------------------------- */

void QuickSort(STUDENT *list, int iLo, int iHi,

int field, int dir)

{

int Lo = iLo, Hi = iHi;

STUDENT mid = list[(Lo+Hi)/2];

do{

while(Cmp(list[Lo],mid,field,dir)<0) Lo++;

while(Cmp(list[Hi],mid,field,dir)>0) Hi--;

if(Lo <= Hi){

STUDENT tmp = list[Lo];

list[Lo] = list[Hi];

list[Hi] = tmp;

Lo++; Hi--;

}

}while(Lo <= Hi);

if(Hi > iLo) QuickSort(list,iLo,Hi,field,dir);

if(Lo < iHi) QuickSort(list,Lo,iHi,field,dir);

}

/* ---------- Функция сортировки (интерфейсная) -----------

Алгоритм сортировки: быстрый алгоритм Хоара

Параметры: list - указатель на список

num - размер списка

field - номер поля, по которому сравниваются

dir - направление сравнения

-------------------------------------------------------- */

void Sort(STUDENT *list,int num, int field, int dir)

{

QuickSort(list,0,num-1,field,dir);

}

Задача 8.4: Дан бинарный файл, содержащий записи об абонентах оператора мобильной связи: фамилия, имя и отчество абонента (строки по 15 символов), номер телефона (целое положительное семизначное число), дата подключения (дд.мм.гггг). Программа должна по запросу пользователя найти всех абонентов подключившихся за определенный период (вводится как две даты). Все найденные записи выводятся на экран, а затем, по требованию пользователя, сохраняются в файл (имя файла вводит пользователь). Записи выводятся в хронологическом порядке. Имя исходного файла передается в параметрах командной строки.

Программа для задачи

#include <stdio.h>//Библиотека функций ввода и вывода

#include <string.h>//Библиотека функций обработки строк

#include <stdlib.h>//Библиотека стандартных функций

typedef struct{//Описание структуры для хранения даты

unsigned dd:5,mm:4,yy:14;//с использованием битовых полей

} DATE;

typedef struct{ //Описание структуры для хранения

char fio[3][16]; //информации об абоненте

int number;

DATE date;

} ABONENT;

//Функция загрузки списка из файла

int LoadList(const char*,ABONENT **,int*);

void Sort(ABONENT*,int); //Функция сортировки

void Search(ABONENT *,int,DATE,DATE);//Функция поиска

int InputDate(DATE *); //Функция ввода даты

int CmpDate(DATE,DATE); //Функция сранения дат

/* ---------- Главная функция программы main ----------- */

int main(int argc, char *argv[])

{

//Если имя исходного файла не указано, то выход

if(argc < 2) {puts("Не указано имя файла!"); return 0;}

ABONENT *list = NULL; //Указатель на список записей

int num = 0; //Количество записей в списке

//Вызов функции загрузки списка и анализ ее результата

switch(LoadList(argv[1],&list,&num)){

case 1: {puts("Невозможно открыть файл!"); return 0;}

case 2: {puts("Недостаточно памяти!"); return 0;}

}

Sort(list,num); //Сортировка списка по дате

DATE date_from, date_to; //Переменные для хранения дат

do{ //Ввод дат с которой и по какую осуществлять поиск

do //Ввод даты с которой осуществляется поиск

printf("Начальная дата: ");//с проверкой корректного

while(InputDate(&date_from)); //ввода

do //Ввод даты по которую осуществляется поиск

printf("Конечная дата: ");//с проверкой корректного

while(InputDate(&date_to)); //ввода

//Если даты введены в хронологическом порядке, то выход

if(CmpDate(date_from,date_to) <= 0) break; //из цикла

puts("Даты введены некорректно!");//Сообщение об ошибке

}while(1);

Search(list,num,date_from,date_to); //Поиск в списке

free(list); //Удаление списка

return 0; //Выход

}

/* ------------ Функция загрузки списка -------------------

Параметры: name - имя файла,

list - указатель на список (по ссылке),

num - количество записей в списке (по ссылке)

Возвращаемое значение: 0 - успешное завершение,

1 - некорректное имя файла

2 - нехватка динамической памяти

-------------------------------------------------------- */

int LoadList(const char*name, ABONENT **list, int *num)

{

FILE *file = fopen(name,"rb"); //Открытие файла

if(!file) return 1; //Если открыть не удалось, то выход

fseek(file,0,SEEK_END); //Переход в конец файла

//Определение количества записей в файле

int cnt = ftell(file)/sizeof(ABONENT);

fseek(file,0,SEEK_SET); //Переход в начало файла

//Выделение динамической памяти под список

ABONENT *tmp = (ABONENT *)calloc(cnt,sizeof(ABONENT));

//Если память не выделилась, то выход

if(!tmp) {fclose(file); return 2;}

fread(tmp,sizeof(ABONENT),cnt,file); //Считывание даных

fclose(file); //Закрытие файла

*list = tmp; *num = cnt; //Установка переменных по ссылке

return 0; //Выход

}

/* --------- Функция поиска одной записи в списке ---------

Параметры: list - указатель на список,

num - количество записей в списке,

start - номер записи, с которой начинать поиск,

date_from - левая граница временного промежутка,

date_to - правая граница временного промежутка

Возвращаемое значение: -1 - запись не найдена,

≥0 - номер записи в списке.

Реализован алгоритм линейного поиска.

-------------------------------------------------------- */

int Find(ABONENT *list, int num, int start,

DATE date_from, DATE date_to)

{

for(int i=start;i<num;i++)

if((CmpDate(list[i].date,date_from)>=0)&&

(CmpDate(list[i].date,date_to)<=0)) return i;

return -1;

}

/* --------- Функция поиска всех записей в списке ---------

Параметры: list - указатель на список,

num - количество записей в списке,

start - номер записи, с которой начинать поиск,

date_from - левая граница временного промежутка,

date_to - правая граница временного промежутка

-------------------------------------------------------- */

void Search(ABONENT *list, int num, DATE date_from,

DATE date_to)

{

char fname[50] = ""; //Имя файла для отчета

for(int i=0;i<2;i++){//Цикл на две итерации

FILE *file = stdout; //Установка на стандартный вывод

//Если это вторая итерация, то вывод в файл

if(i == 1) file=fopen(fname,"w");

//Если открыть файл не удалось, то выход

if(!file) {puts("Невозможно создать файл!"); return;}

int ind = -1; //Индекс найденной записи

//Поиск записей в цикле, выход - если запись не найдена

while((ind=Find(list,num,ind+1,date_from,date_to))!=-1)

//Вывод найденной записи

fprintf(file,"%-15s %-15s %-15s %7u %2u.%2u.%4u\n",

list[ind].fio[0], list[ind].fio[1],

list[ind].fio[2], list[ind].number,

list[ind].date.dd, list[ind].date.mm,

list[ind].date.yy

);

char ch = 'n'; //Символ для диалога с пользователем

while(i==0){//Если это первая итерация

//Вопрос пользователю

printf("Сохранить файл? (y/n): ");

//Очистка буфера ввода и ввод символа

fflush(stdin); scanf("%c",&ch);

//Если ответ положительный

if((ch == 'y')||(ch == 'Y')){

printf("Имя файла: ");//Приглашение к вводу

scanf("%s",fname); //и ввод имени файла

break; //Выход из вложенного цикла

}

//Если ответ отрицательный, то выход

if((ch == 'n')||(ch == 'N')) return;

}

}

}

/* ---- Функция ввода даты и проверки ее корректности -----

Параметр: date - структура дата, в которую осуществляется

ввод (по ссылке)

Возвращаемое значение: 0 - дата введена корректно

1 - дата введена не корректно

-------------------------------------------------------- */

int InputDate(DATE *date)

{

unsignedday,mon,year; //Локальные переменные

//Ввод значения в формате дд.мм.гггг.

//Если ввод некорректный, то выход со значением 1

if(scanf("%u.%u.%u",&day,&mon,&year) != 3) return 1;

//Проверка корректности введенных значений

if((day<1)||(day>31)||(mon<1)||(mon>12)||(year<1))

return 1;

//Проверка корректности ввода числа для месяцев, в

//которых 30 дней и для февраля с учетом високосного года

switch(mon){

case 4: case 6: case 9: case 11:

if(day>30) return 1; else break;

case 2: if(( (year%4)&&(day>28))||

(!(year%4)&&(day>29))) return 1;

}

//Запись значений в структуру

date->dd = day; date->mm = mon; date->yy = year;

return 0; //Выход

}

/* ------------- Функция сравнения двух дат ---------------

Параметр: dt1 - первая дата,

dt2 - вторая дата

Возвращаемое значение: 0 - даты равны,

1 - первая дата «больше»,

-1 - вторая дата «больше»

-------------------------------------------------------- */

int CmpDate(DATE dt1, DATE dt2)

{

if(dt1.yy > dt2.yy) return 1;

else if(dt1.yy < dt2.yy) return -1;

if(dt1.mm > dt2.mm) return 1;

else if(dt1.mm < dt2.mm) return -1;

if(dt1.dd > dt2.dd) return 1;

else if(dt1.dd < dt2.dd) return -1;

return 0;

}

/* ------- Функция сортировки списка (внутренняя) ---------

Параметр: list - указатель на список,

iLo - нижний индекс,

iHi - верхний индекс.

Реализует алгоритм Хоара

-------------------------------------------------------- */

void QuickSort(ABONENT *list, int iLo, int iHi)

{

int Lo = iLo, Hi = iHi;

ABONENT mid = list[(Lo+Hi)/2];

do{

while(CmpDate(list[Lo].date,mid.date)<0) Lo++;

while(CmpDate(list[Hi].date,mid.date)>0) Hi--;

if(Lo <= Hi){

ABONENT tmp = list[Lo];

list[Lo] = list[Hi];

list[Hi] = tmp;

Lo++; Hi--;

}

}while(Lo <= Hi);

if(Hi > iLo) QuickSort(list,iLo,Hi);

if(Lo < iHi) QuickSort(list,Lo,iHi);

}

/* -------- Функция сортировки списка (внешняя) -----------

Параметр: list - указатель на список,

num - количество элементов в списке

-------------------------------------------------------- */

void Sort(ABONENT *list,int num)

{

QuickSort(list,0,num-1);

}

Задача 8.5: Дан бинарный файл, содержащий записи об абонентах оператора мобильной связи: фамилия, имя и отчество абонента (строки по 15 символов), номер телефона (целое положительное семизначное число), дата подключения (дд.мм.гггг). Программа должна по запросу пользователя (водит номер телефона) найти абонента с этим номером и вывести его ФИО и дату подключения. Программа должна работать в интерактивном режиме: после вывода найденной информации переходить к новому запросу. Выход из программы - ввод слова exit. При реализации программы использовать библиотечные функции сортировки и поиска. Имя исходного файла передается в параметрах командной строки.

Программа для задачи

#include <stdio.h>//Библиотека функций ввода и вывода

#include <string.h> //Библиотека функций обработки строк

#include <stdlib.h> //Библиотека стандартных функций

typedef struct{//Описание структуры для хранения даты

unsigned dd:5,mm:4,yy:14;//с использованием битовых полей

} DATE;

typedef struct{//Описание структуры для хранения

char fio[3][16]; //информации об абоненте

int number;

DATE date;

} ABONENT;

//Функция загрузки списка из бинарного файла

int LoadList(const char*,ABONENT **,int*);

//Функция сравнения двух записей

int Cmp(const void*,const void*);

/* -------- Главная функция программы main ------------- */

int main(int argc, char *argv[])

{

//Если имя исходного файла не указано, то выход

if(argc < 2) {puts("Имя файла не указано!"); return 0;}

ABONENT *list = NULL; //Указатель на список записей

int num = 0; //Количесвто записей в списке

//Вызов функции загрузки списка и разбор ее значения

switch(LoadList(argv[1],&list,&num)){

case 1: {puts("Невозможно открыть файл!"); return0;}

case 2: {puts("Недостаточно памяти!"); return 0;}

}

qsort(list,num,sizeof(ABONENT),Cmp);//Сортировка списка

while(1){ //Цикл интерактивного режима работы

char str[100]; //Буфер ввода

printf(">:"); //Приглашение к вводу

gets(str); //Ввод строки

//Если введено слово «exit», то выход из цикла

if(strncmp(str,"exit",4) == 0) break;

ABONENT key = {{"","",""},0,{0,0,0}};//Ключ для поиска

//Преобразование запрашиваемого номера из

key.number = atoi(str); //введенной строки

//Проверка корректности ввода телефонного номера

if((key.number < 1000000)||(key.number > 9999999)){

puts("Телефонный номер введен неправильно!");

continue; //Переход к следующей итерации

}

//Поиск записи в списке по введенному номеру

ABONENT *ptr =

(ABONENT *)bsearch(&key,list,num,sizeof(ABONENT),Cmp);

//Если запись не найдена, то выводим сообщение

if(!ptr) puts("Не найдено!");

//Иначе: выводим на экран найденную запись

else printf("%-15s %-15s %-15s %7u %2u.%2u.%4u\n",

ptr->fio[0], ptr->fio[1], ptr->fio[2],

ptr->number,

ptr->date.dd, ptr->date.mm, ptr->date.yy);

}

free(list); //Удаление списка

return 0; //Выход

}

/* ------------ Функция загрузки списка -------------------

Описание и комментарии в предыдущем примере

-------------------------------------------------------- */

int LoadList(const char*name, ABONENT **list,int*num)

{

FILE *file = fopen(name,"rb");

if(!file) return 1;

fseek(file,0,SEEK_END);

int cnt = ftell(file)/sizeof(ABONENT);

fseek(file,0,SEEK_SET);

ABONENT *tmp = (ABONENT *)calloc(cnt,sizeof(ABONENT));

if(!tmp) {fclose(file); return 2;}

fread(tmp,sizeof(ABONENT),cnt,file);

fclose(file);

*list = tmp; *num = cnt;

return 0;

}

/* ----------- Функция сравнения двух записей -------------

Параметр: el1 - указатель на первую запись,

el2 - указатель на вторую запись

Возвращаемое значение:

0 - телефонные номера равны,

1 - телефонный номер перой записи «больше»,

-1 - телефонный номер второй записи «больше»,

-------------------------------------------------------- */

int Cmp(const void*el1, const void*el2)

{

ABONENT *ptr1 = (ABONENT *)el1, *ptr2 = (ABONENT *)el2;

if(ptr1->number > ptr2->number) return 1;

else if(ptr1->number < ptr2->number) return -1;

return 0;

}

 

· Интерфейс определяет поведение объекта и содержит описание поддерживаемых членов. Ими могут быть методы, свойства и события.

· Объект, реализующий некоторый интерфейс, может взаимодейство­вать с любым другим объектом, которому необходим этот интерфейс.

· За реализацию членов интерфейса отвечает класс или структура, в которой этот интерфейс реализован. В классах, как и в структурах, допускается реализация нескольких интерфейсов.

· Класс или структура, реализующая некоторый интерфейс, должна обеспечить реали­зацию всех членов, объявленных в этом интерфейсе.

· В С# члены интерфейса реализуются двумя способами:

ü реализация члена с именем, сигнатурой и уровнем доступа, идентичными соответствующему члену интерфейса. Такие члены доступны как че­рез реализующий класс, так и через интер­фейс;

ü явная реализация члена интерфейса с указанием его полного имени. Такие члены доступны только через интерфейс.

 

10/ 10 /12 Система государственной гражданской службы Российской Федерации: история формирования нормативно-правовой базы, основные проблемы и перспективы развития (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
16 /10/ 12 Основные направления, результаты и перспективы реформирования и развития системы государственной службы Российской Федерации (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
24/ 10 /12 О деятельности Департамента проектов развития регионов (Адрес 1-я Тверская-Ямская, 1.3 (Актовой зал))
30/ 10/ 12 Государственная антикоррупционная политика и противодействие коррупции на государственной службе (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
01/ 11/ 12 Совершенствование деятельности государственных корпораций в Российской Федерации (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
06/ 11/ 12 Актуальные аспекты партнерства для модернизации между Россией и ЕС. Работа по экономической ситуации в ЕС и странах-членах (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
08/ 11/ 12 Институты развития в Российской Федерации: результаты и перспективы (Адрес 1-я Тверская-Ямская. 1,3 (Актовый зал))
13/ 11/ 12 Государственная поддержка социально ориентированных НКО (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
14/ 11/ 12 Использование проектного метода в сотрудничестве с европейскими странами и способы разрешения конфликтных ситуаций. Организация работы секретариатов МПК (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
20/ 11/ 12 Правовые основы регулирования государственной гражданской службы в соответствии с Федеральным законом от 27. 07.2004 № 79-ФЗ . «О государственной гражданской службе Российской Федерации» (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
27/ 11/ 12 Полномочия, структура и задачи, стоящие перед Департаментом торговых переговоров (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
27 /11 12 Роль Департамента торговых переговоров в системе внешнеэкономических связей (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
29/ 11/ 12 Значение сотрудничества с ЕС и странами-членами в общем контексте торгово-экономического сотрудничества России с зарубежными странами. Основные инициативы за последние 20 лет (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
03/ 12 12 Оценка воздействия регуляторной политики: современная практика и общие результаты оценивания, планы по дальнейшему развитию (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
06/ 12/ 12 Вопросы деятельности Департамента Азии и Африки. Структура и полномочия (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
10/ 12/ 12 Подход «разумное регулирование» (intelligent regulation): практика применения, преимущества, практический инструментарий (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
13/ 12/ 12 Сравнительные особенности и критерии опенки регуляторной политики в различных секторах деятельности (общая картина и конкретные примеры) (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))
18/ 12/ 12 Сотрудничество со странами Северной и Латинской Америки (Адрес Овчинниковская набережная, 18/1 (зал на 9 этаже))
20/ 12/ 12 Развитие института венчурного финансирования в Российской Федерации (Адрес 1-я Тверская-Ямская, 1,3 (Актовый зал))

 

по специальности 1-26 02 02 «Менеджмент»

кафедра политологии, социологии и социального управления ФТУГ

Название дисциплины   Вид работы   Ф.И.О. преподавателя Дата Время Аудитория, корпус № уч. групп. кол-во чел.
1-26 02 02 «Менеджмент»
Управление персоналом   Лекция, консультация Вайнилович Э.Г., ст. преподаватель 25.03.2013 понедельник 15.40- 17.15 а.418 корп.8   31 чел.
17.25-19.00 а.2П корп.8
Теоретические основы менеджмента   Лекция, консультация Кисель Н.П., ст. преподаватель 26.03.2013 вторник 15.10- 18.30   а. 314 к. 9
Рынок труда   Лекция, консультация Дубовик А.К., доцент 26.03.2013 вторник 18.40- 22.00 а. 314 к. 9
  ГЭК   02-03.04 2013 9.00 а. 375 к. 1
Управление персоналом   Лекция, консультация Вайнилович Э.Г., ст. преподаватель 02.04.2013 вторник 15.10- 18.30 акт. зал, корп. 9   29 чел.
Рынок труда   Лекция, консультация Дубовик А.К., доцент 03.04.2013 среда 15.40- 19.00 а. 210 к. 6
Теоретические основы менеджмента   Лекция, консультация Кисель Н.П., ст. преподаватель 03.04.2013 среда 19.10- 22.30   а. 210 к. 6
  ГЭК   09-10.04 2013 9.00 а. 375 к. 1

Методист УМУ

_______________Т.И. Прокопенко

«___»__________2013 г.



<== предыдущая лекция | следующая лекция ==>
ДИЗАЙН, 55 страница | Лекция 2. ИНВЕСТИЦИОННЫЕ ПРОЕКТЫ: ОЦЕНКА ЭФФЕКТИВНОСТИ ИНВЕСТИЦИОННЫХ ПРОЕКТОВ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.976 сек.