Софт-Архив

Примеры Задач На Си img-1

Примеры Задач На Си

Рейтинг: 4.3/5.0 (1858 проголосовавших)

Описание

Решение задач по программированию на языке C

Решение задач по программированию на языке C++ Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже. Подобные документы

Написание программы вычисления сопротивления электрической цепи, состоящей из двух параллельно и двух последовательно соединенных сопротивлений. Схема машинного алгоритма по условию задачи. Применение операций при написании программ на языке C/C++.

контрольная работа [17,3 K], добавлен 09.11.2010

Ханойские башни: постановка задачи, условия перемещения дисков со стержня на стержень. Стратегия решения, используемые предикаты. Текст программы на языке Пролог. Построение модели решения задачи о ферзях. Примеры использования списков в языке Пролог.

презентация [72,0 K], добавлен 29.07.2012

Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.

курсовая работа [365,0 K], добавлен 18.05.2013

Практические навыки моделирования задач линейного программирования и их решения графическим и симплекс-методом с использованием прикладной программы SIMC. Моделирование транспортных задач и их решение методом потенциалов с помощью программы TRAN2.

контрольная работа [199,8 K], добавлен 15.06.2009

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

курсовая работа [761,7 K], добавлен 11.03.2015

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

контрольная работа [316,8 K], добавлен 28.08.2012

Программирование на языке Паскаль: алфавит, решение задач, простейшие программы, разветвляющие программы, циклические программы, ввод-вывод, массивы, подпрограммы, строковые данные, записи, файлы, использование библиотеки CRT, графика в Паскале.

учебное пособие [211,1 K], добавлен 30.03.2008

Разработана программа решения двух задач на языке программирования Turbo Pascal. Спецификация задания. Описание входных и выходных данных. Математическая постановка задачи. Алгоритм ее решения. Описание и блок-схема программы. Результаты тестирования.

курсовая работа [275,8 K], добавлен 28.06.2008

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

курсовая работа [60,7 K], добавлен 26.11.2012

Технология программирования, основные этапы развития. База данных, понятие,характеристика, основные типы баз. Действие и структура программы С++. Процесс подготовки и решения задач на компьютерах. Написание и отладка программы на языке программирования.

курсовая работа [32,8 K], добавлен 26.01.2011

Р ешение задач по программированию на языке C++

Потопахин Виталий Валерьевич

Пояснительная записка

Другие статьи, обзоры программ, новости

Язык программирования Си (C )

Язык программирования Си(C++). Обучающие уроки

Си - это язык программирования высокого уровня, который более популярен, чем Паскаль и Ассемблер. Си, позволяет писать программы под Windows. Ведь первые Операционные системы были написаны именно на языке Си. Программирование под Windows сейчас очень распространено в мире, но для этого необходимо много труда и усилия. В данном курсе мы пройдем не один десяток уроков, чтобы сначала научиться программировать на языке С. В них вы найдете примеры программирования на си. После чего вы можете изучать программирование под windows.

Чтобы писать программы на языке Си, необходимо войти в среду программирования. Если у вас нету этой программы, то вы можете скачать ее на любом сайте, это: Borland C, Visual C++, Visual Studio 2005, Visual Studio 2008 и уже выходит Visual Studio 2010 Если же она у вас есть, то приступим к процессу обучения.

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

Материалы по программированию ищите на сайте allrefs.net .

Решение задач на C

Решение задач на C

Здесь находится коллекция решений задач и примеры маленьких программ на языке C.

Первая половина задач и примеров взята из книги Б. Кернигана и Д. Ритчи "Язык программирования C " (второе издание). В отличие от книги задачи либо решены, либо прокомментированы, либо программы дописаны до рабочего состояния.

Вторая половина задач - это ответы на некоторые задания к курсу "Особенности языка C" .

В последнем примере "Указатели и массивы" демонстрируются особенности указателей.

K&R (41-43). Вывод самой длиной строки

В книге в данном разделе опущен момент о том, как происходит обмен данными между функциями (хотя оговаривается перед этим об особенностях передачи массивов в качестве аргументов). Все переменные локальные и поэтому с первого взгляда не понятно, почему функция getline() меняет значение переменной line в функции main(), а copy() - значение longest. Массивы в качестве аргументов передаются не по значению. Переменные в getline() и copy() получают ссылки на массивы, определенные в main(), а не содержимое этих массивов.

K&R (52-53). Длина строки

Решение задач на языке программирования C

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

В примере ниже строка, вводимая пользователем, записывается в массив символов. Затем ее длина измеряется с помощью встроенной функции strlen(), после чего с помощью пользовательской функции strlen2().

Обращает на себя внимание то, что завершающий символ нуля в строку не записывался, однако видимо он туда автоматически добавляется. Поэтому цикл while в функции strlen2() работает корректно. Тогда непонятно, почему авторы "вручную" дописывают в конец строки нуль в предыдущем примере (поиск самой длиной строки) при считывании ввода.

K&R (61-62). Удаление символов из строки

Решение задач на языке программирования C

Приводится пример функции squeeze. которая удаляет все символы c из строки s.

Ниже представлен полный код программы с использованием этой функции. А также ответ к упражнению 2.4, где предлагается написать функцию, удаляющую из строки s1 все символы, встречающиеся в строке s2.

Алгоритм удаления символа из строки можно описать так:

  • Пока не будет достигнут конец строки,
  • если очередной символ строки не равен символу для удаления,
  • записать очередной символ по месту индекса j. после этого последний увеличить на единицу.

Другими словами, алгоритм сводится к тому, что символ по индексу i затирается следующим символом, если он совпал с символом для удаления; т.к запись идет по счетчику j. а он увеличивается лишь тогда, когда символы из строки и для удаления не совпадают.

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

Удаление всех символов c из строки

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

K&R (71-72). Двоичный поиск

Учи Си - Онлайн самоучитель языка программирования Си в задачах и примерах

Предисловие.

Чтобы научиться программировать, недостаточно прочитать книгу, посвященную языку программирования, надо писать программы, решать конкретные проблемы. Но где их найти? В учебниках, как правило, приводятся типовые, стандартные задачи, в основе которых лежит расчет по формулам. Это, несомненно, полезно, но не всегда интересно. В книге начинающему программисту предлагаются задачи, которые, с одной стороны, ему по плечу, с другой — полезны и занимательны. Состоит книга из трех частей и приложения.

В первой части собраны задачи. Они сгруппированы по темам и охватывают практически все разделы базового курса программирования: от объявления переменных и программ с линейной структурой до работы с графикой и файлами. Вторая часть содержит решения, представленные в виде хорошо документированных текстов программ, изучение которых, несомненно, будет полезно для начинающего программиста даже в том случае, если задача решена им самостоятельно. Третья часть представляет собой справочник по языку программирования C++ и содержит описание наиболее часто используемых функций. О компиляторе. Разрабатывая программу, программист ориентируется на ту или иную среду разработки, компилятор. Профам-мировать на C++ можно как в среде Windows, так и в DOS, причем для каждой из операционных систем существует довольно большое количество средств разработки: от компилятора, работающего в режиме командной строки DOS, до мощной интерактивной интефированной среды разработки. На каком инструменте остановить свой выбор? Если вы опытный программист (хотя это маловероятно, тогда вы не держали бы в руках эту книгу) и собираетесь разрабатывать программу по Windows, то безусловно выберите Microsoft Visual C++ или Borland C++ Builder. Если вы только осваиваете язык программирования, то следует сосредоточиться именно на языке, его возможностях, особенностях. Для решения этой задачи наилучшим образом подходит предназначенная для работы в DOS интефированная среда разработки Вогland C++ Version 3.1, которая, безусловно, может быть запущена и из Windows. Следует особо обратить внимание на то, что хотя Borland C++ и был создан довольно давно, но это профессиональная, высокоэффективная среда разработки, которая наилучшим образом подходит для изучения C++. Еще раз повторю, что научиться программировать можно только программируя, решая конкретные задачи. Поэтому, чтобы получить максимальную пользу от книги, вы должны работать с ней активно. Решайте задачи. Изучайте приведенные решения. Вводите их в свой компьютер. Не бойтесь экспериментировать — вносите изменения в программы. Чем больше вы сделаете самостоятельно, тем большему вы научитесь!

Как работать с книгой

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

Оформление решений

Важно, чтобы решенная задача была правильно оформлена. Это предполагает:

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

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

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

Правильно оформленную программу легче отлаживать, кроме того, она производит хорошее впечатление.

Приведенные в книге решения задач можно рассматривать как образцы правильного оформления.

Примеры решения задач по программированию

Примеры решения задач по программированию

по дисциплине “Основы алгоритмизации и программирования”

Выполнил: студент

Проверила: Попова Ю. Б.

Минск 2006

ЗАДАНИЕ № 1

ЗНАКОМСТВО СО СРЕДОЙ. ОБЪЯВЛЕНИЕ ОСНОВНЫХ ТИПОВ ДАННЫХ. ВВОД/ВЫВОД ДАННЫХ. ОПЕРАЦИИ В ЯЗЫКЕ C / C ++

Цель работы

Закрепление практических навыков построения простой программы, объявления основных типов данных и организации ввода/вывода переменных, применения операций при написании программ на языке C/C++.

Постановка задачи

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

Листинг программы на языке C ++

#include <clx.h>

#include<iostream.h> // подсоединение к программе раздела библиотеки с функциями// по потокового ввода/вывода данных

void main()

int a, b, c, d; // объявление переменных a, b, c целого типа

cout<<"Введите значение сопротивления a и b:"; // вывод строки на экран

cin>>a>>b; // ввод значений a и b

c=a*b; // умножение значений a и b и присвоение переменной с

d=a+b; // присваивание переменной c значения суммы переменных a и b c=c/d;

cout<<"Сопротивление цепи с последующим соединением ="<<c; // вывод значения переменной c на экран c=a+b;

cout<<"Сопротивление цепи с параллельным соединением ="<<c; // вывод значения переменной a на экран cin>>a;

Результаты работы программы

Введите значения переменных: 4 7

Результат: 2 и 11

Выводы по лабораторной работе

В ходе выполнения задания была составлена схема машинного алгоритма по условию задачи, написан код программы и получены результаты работы программы. В результате выполнения работы были закреплены практические навыки построения простой программы на языке программирования C/C++, в которой были объявлены переменные целого типа. Организован ввод значений переменных с помощью оператора потокового ввода, произведен расчет суммы значений переменных и организован вывод результата на экран с помощью оператора потокового вывода.

ЗАДАНИЕ № 2

ОПЕРАТОРЫ ЯЗЫКА C / C ++. ФОРМАТИРОВАННЫЙ ВВОД/ВЫВОД ДАННЫХ. СТРУКТУРЫ ВЫБОРА. СТРУКТУРЫ ПОВТОРЕНИЯ

Цель работы

Закрепление практических навыков построения программы на языке C/C++ с использованием структур выбора if-else, switch, с использованием структур повторения do-while, while, for, а также с организацией ввода/вывода данных с применением функций форматированного ввода/вывода.

Написать программу вычисления площади кольца. Программа должна проверять правильность исходных данных. Использовать структуру выбора if-else. Использовать форматированный ввод/вывод данных.

cout<<"Введите значение кольца:"<<endl;

cin>>n;

if (n<0) cout<<"Значение не верные"; // если значение условия (n<0) является истинным, на экран выводится текст Значение не верные

Результаты работы программы

Результат: 48

Выводы по лабораторной работе

В результате выполнения работы были закреплены практические навыки построения простой программы на языке программирования C/C++, в которой были объявлены переменные целого типа. Организован ввод значений переменных с помощью оператора потокового ввода, произведен расчет суммы значений переменных и организован вывод результата на экран с помощью оператора потокового вывода а также использовалась структуру выбора if-else.

ЗАДАНИЕ № 3

Цель работы

Закрепление практических навыков построения программы на языке C/C++ с использованием массивов данных и переменных типа указатель.

1. Написать программу, которая проверяет, представляют ли элементы введенного с клавиатуры массива возрастающую последовательность. Использовать форматированный ввод-вывод данных.

Листинг программы на языке C ++

scanf("%d",&mas[i]); // заносим значение в массив

printf(" Вывод элементов масива \n");

for(i=0;i<5;i++) // использование вложенной структуры повторения for для

printf("%d",mas[i],"\n"); // вывод суммы элементов массива mas на экран

for(i=1;i<4;i++) // использование вложенной структуры повторения for для if (i++<a) cout<<"Массив не является возрастающей последовательностью ";

// использование else-if конструкции

Результаты работы программы

Введите значения. 4 7 5 6 8

Результат: 4 7 5 6 8 Массив не является возрастающей последовательностью

Выводы по лабораторной работе

В ходе выполнения задания была составлена схема машинного алгоритма по условию задачи, написан код программы и получены результаты работы программы. В результате выполнения работы были закреплены практические навыки построения простой программы на языке программирования C/C++, в которой были объявлен массив MAS. Организован ввод значений переменных с помощью оператора потокового ввода, произведен расчет значений массива на возрастающую последовательность и организован вывод результата на экран с помощью оператора потокового вывода.

ЗАДАНИЕ № 4

ФУНКЦИИ В C / C ++. УКАЗАТЕЛИ НА ФУНКЦИИ. ПЕРЕГРУЗКА ФУНКЦИЙ. ШАБЛОНЫ ФУНКЦИЙ

Цель работы

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

Написать программу, в которой необходимо определить массив указателей на функции. Вводить цифру, определяющую какую функцию надо выполнить: 0-найти минимальное число, 1-найти максимальное число, 2-вычислить сумму чисел, 3-вычислить разность чисел, 4-найти произведение чисел, 5-найти частное чисел, 6-завершить работу. Выполнить соответствующую функцию, используя указатель на нее, и вывести результаты на экран. В программе предусмотреть использование прототипа функции.

Листинг программы на языке C ++

Примеры задач на с

Примеры задач на с++

Июль 22nd, 2013 admin

Несколько задач на языке С (Си)

1.   Вычислить среднее арифметическое двух значений х1 и х2.

2.   Перевести длину, заданную в дюймах, в сантиметры (10 дюймов = 254 мм).

3.   Перевести длину, заданную в сантиметрах, в дюймы.

4.   Перевести температуру из шкалы Фаренгейта в шкалу Цельсия (формула для пересчета c=(5/9)(f-32)).

7.   Вычислить периметр и площадь:

a)   квадрата со стороной, равной а.

b)   прямоугольного треугольника с катетами a и b.

c)   равнобедренного треугольника с основанием a и высотой h.

d)   равнобокой трапеции с длинами оснований a и b и высотой h.

e)   равностороннего треугольника со стороной, равной a.

8.   Вычислить площадь поверхности и объем:

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

int x1,x2;

float result;

cin &gt;&gt; x2;

result = arn (x1, x2);  //call function arn

cout &lt;&lt; "The arithmetic mean of number " &lt;&lt; x1 &lt;&lt; " and " &lt;&lt; x2  &lt;&lt; " is " &lt;&lt; result &lt;&lt; endl;

С кодом конечно намудрил немного, но программка работает. В коде используется своя функция (arn ). Которая просто считает среднее арифметическое двух чисел. Можно избавиться от переменной result и сразу вывести функцию.  Количество строк уменьшится в коде на 2. Еще есть варианты как упростить код?

Четвертая и пятая задачи встречаются часто в одном задании и формулируется так:

Примеры задач на си

Пользователей

Всего пользователей: 11448

Последний: tempinetlogin Статистика

Всего сообщений: 55655

Всего тем: 8702

Онлайн Сегодня: 21

Наибольшее количество Онлайн: 1780

(05 Октября 2015, 16:22:38) Пользователи Online

Пользователей: 0

Книга по С - Пример простой программы на языке Си

printf("Cумма = %d \n",c)

Дадим некоторые пояснения. В языке Си любая пограмма, состоит из нескольких программных едениц и каждая из них - функция. Функции в Си подобны функциям или подпрограммам в Фортране или процедурам в Паскале, Имена функций выбираются произвольно (только латинскими буквами), но одно из них main. именно с нее начинается выполнение программы. Такая главная функция обычно обращается к другим функциям, которые находятся в одном файле с головной программой или извлекают из библиотеки предварительно подготовленных функций.Функция main не имеет аргументов, поэтому список ее выглядит так: ( ). Скобки < > обрамляют операоры, которые реализуют собственно алгоритм. Эти скобки аналогичны BEGIN - END в Паскале.

Строка int a,b,c; объявляет a,b,c переменными целого типа. Все используемые в программе переменные должны быть объявлены. Далее идут опрераторы присваивания к a значение 5. а к b - 7. с - значение их суммы. Значения переменных типа int лежат в диапазоне [-32768; 32767]. Функция printf выводит на экран: СУММА = 12.

Рассмотрим теперь функцию scanf предназначенную для форматного ввода данных. Функция scanf в качестве фактических параметров использует адреса переменных, а не их значения. Для этого перед соответствующим параметром ставят знак & - символ взятия адресса. Например, &XL означает "адрес перменной XL ", а не значение, которое переменная имеет в данный момент.

Строка форматов функции scanf указывает, какие данные ожидаются на входе. Если функция встречает в форматной строке знак %. за которым следует символ преобразования, то она будет пропускать на входе символы до тех пор, пока не встретит какой-нибудь не пустой символ.

Предыдущяя программа страдает одним недостатком: программа вычисления суммы годится только для одного конкретного случая, когда a=5, b=7. Улучшим ее, заменив соответствующие операторы присваивания вызовом функции scanf (пример 1.2).

/* Ввод двух чисел, вычисление суммы и печать результата*/