Главная » Просмотр файлов » Задачник и решебник

Задачник и решебник (1087980), страница 17

Файл №1087980 Задачник и решебник (Задачник и решебник) 17 страницаЗадачник и решебник (1087980) страница 172018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 17)

Решения163puts("\nДля завершения работы нажмите <Enter>");getch();}Задача 192// Функция вычисляет доход по вкладуfloat dohod(float sum,// сумма вкладаfloat stavka, // процентная ставка (годовых)int srok)// срок вклада (дней){return(sum*(stavka/100/365)*srok); // 365 кол-во дней в/ / году}Задача 193// Функция проверяет, является ли символ гласной буквойint glasn(char ch){static char gl[] ="АаЕеИиОоУуЫыЭэЮюЯя\0";int i = 0;while (gl[i] && gl[i] != ch)i++;if ( gl[i] )return(1);else return(0);Задача 195// Функция upcase#include "stdio.h"#include "conio.h"// функция преобразования строчных букв в прописныеchar* upcase (chau: *st){int i = 0;while ( st[i] )164C/C-i-f- в задачах и примерах{if (st[i] >= 'а' && st[i] <= 'z' ||// латинскиеst[i] >= *а' && st[i] <= 'п') // русскиеst[i] -= 32;else if (st[i] >= 'p' && st[i] <= 'яМst[i] -= 80;i++;}return St;}// пример использования функции upcasevoid main(){char St [80];puts("Введите строку текста и нажмите <Enter>");printf("->");gets(St);puts(upcase(st));puts("\nДля завершения нажмите <Enter>");getch();}Задача 196// Функция решения квадратного уравнения#include "stdio.h"tinclude "conio.h"#include "math.h"int kvadur(float a, float b, float c, // коэф-ты уравненияfloat *xl, float *x2)// корни уравнения// значение функции - количество корней// или -1, если неверные исходные данные{float d; // дискриминантЧасть 11.

Решенияif (а == 0) retum(-l);d = b*b-4*a*c;if (d < 0)return(0);// уравнение не имеет решения*х1 = (-b+sqrt(d))/(2*а);*х2 = (-b-sqrt(d))/(2*a);i f (*х1 !- *х2) retum(2);e l s e retxim (1) ;}// проверка работоспособности функцииvoid main О{float a,b,с; // коэффициенты уравненияfloat х1,х2; // корни уравненияint п;// кол-во корнейputs("\пРешение квадратного уравнения");puts("Введите в одной строке коэффициенты и нажмите\<Enter>");printf("->");scanf("%f%f%f", &a, &b, &c);switch (kvadur(a,b,c,&xl, &x2)){case -1: puts("Ошибка исходных данных.");break;case 0: puts("Уравнение не имеет решения.");break;case 1: printf("Корни одинаковые: x=%3.2f", xl);breaJc;case 2:printf("xl=%3.2f x2=%3.2f", xl, x2);}puts("\nДля завершения работы нажмите <Enter>");getch();165^166C/C+'f- в задачах и примерахЗадача 197// Функция starline выводит строку из звездочек#include "stdio.h"#include "conio.h"// выводит строку из звездочекvoid starline{int len){for (int i = 0; i < len; i++)putch('* M ;}void main()(starline(10);puts("\nДля завершения работы нажмите <Enter>");getch();}Задача 200// Функция frame вычерчивает рамку#include "stdio.h"#include "conio.h"// вычерчивает рамкуvoid frame(int 1, int t, int w, int h){// l,t - координаты верхнего левого угла,// vif h - ширина и высота рамкиint х,у; // координаты выводимого символаint i;// символы, из которых составляется рамкаchar с1 == 218, // левый верхний уголс2 = 196, // горизонтальная линиясЗ = 191, // правый верхний уголс4 = 179, // вертикальная линияс5 = 192, // левый нижний уголев - 217; // правый нижний уголЧасть II.

Решения167gotoxy(l,t);putch(cl);for (i = 0; i < w-2; i++) // символы верхней границы// рамкиputch(с2);putch(c3);у = t+1;X = 1+w-l;for (i = 0; i < h-1; i++) //символы левой и правой границ{gotoxy(l,y);putch(с4);gotoxy(х,у);putch(с4);У++;}gotoxy(1,у);putch(с5);for (i = 0; i < w-2; i++) // символы нижней границыputch(c2);putch(c6);}void main (){clrscr();frame(5,5,30,10);puts("\nДпя завершения нажмите <Enter>");getch();}Задача 201// Функция getint#include "stdio.h"#include "conio.h"#include "stdlib.h"// Функция getint предназначена для ввода целого// положительного числа, состоящего из одной или двух цифр.//Во время ввода, для редактирования, может использоваться// клавиша <Backspace>.168C/C-i'+ в задачах и примерах// при нажатии <Enter> функция возвращает// введенное число.#define К_ВАСК 8// код клавиши <Backspace>#define K_ENTER 13 // код клавиши <Enter>#define НВ4// допустимое количество цифрint getint(){char ch;// текущий символchar buf[HB]; // введенные цифрыint n = 0;// кол-во введенных цифрbuf[0] = 40»;w h i l e ((ch = g e t c h O ) != K_ENTER)i f (ch >= ' 0 ' && ch <= 'Э^б^; n < HB){putch(ch);buf[n++] = ch;}e l s e i f (ch == K_BACK && n){printf("\b \b");n—;}i f (n){buf[n] = '\0';return(atoi(buf));}else retum(-l);void main () {int a; // введенное числоputs("ХпДемонстрация работы функции getintXn");puts("Функция getint предназначена для ввода");puts("целого положительного числа.");puts("Во время ввода, для редактирования, может");puts("использоваться клавиша <Backspace>");Часть II.

Решенияputs("При нажатии <Enter> функция возвращает");puts("введенное число или -1, если число не введено.");puts("Введите число и нажмите <Enter>");print£("->");if (а = getintO )printf("\nBbi ввели число %d", а ) ;else puts("Число не введено.");puts("\nДля завершения нажмите <Enter>");getch();}Задача 202// Функции getfloat и pos#include <stdio.h>#include <conio.h>#include <stdlib.h>#define PATHTODRIVER "c: WborlandcWbgiW"// возвращает позицию символа в строкеint pos(char* st, char c){int i = 0;while ( st[i] != с && st[i] )i++;if ( st[i] )return(i+1);elsereturn(0);}// вводит дробное числоfloat getfloat О{#define N 10 // кол-во символов, включая точку и минусchar ch;char buf[N+1];int i;1690/0+-^ в задачах и примерах170for (i = 0; i < N+1; i++)buf[i++] ='\0';i = 0;do {ch=getch();if (ch >= '0' && ch <= '9' && i < 8) {putch(ch);buf[i++] = ch;}elseswitch (ch) {case '-" : if (!i){putch(ch);buf[i++] = ch;}bresJc;if ( !(pos(buf,'.'))){putch(ch);buf[i++] = ch;}break;if (i)printf("\b \b");buf[—i] = 40»;}} while (ch != 13)<return(atof(buf));}void main (void){float f;printf("Введите дробное число - > " ) ;f = getfloatO ;printf("ХпВведено число %e\n", f);getch();Часть 11.

Решения171Задача 203// Игра "21"#include "stdio.h"tinclude "conio.h"#include "stdlib.h" // функция randiinclude "time.h"// функция timeint koloda[12];int kartaO;void main (){int igrok = 0 ;int comp = 0 ;char otv;time_t t;// колода карт// функция "выдает" карту из колоды// очки игрока// очки компьютера// ответ игрока// создадим колодуfor (int i=2; i <=11; i++)koloda[i] = 4;koloda[5] = 0 ; // "пятерок" в колоде нет// инициализация генератора случайных чиселsrand((unsigned)time(&t))/printf("\пИгра в карты до хорошего не доведет!\п");do {// карта игрокуigrok += karta();// карта компьютеруif (igrok < 21)comp += karta();if (igrok < 21 && comp < 21){printf("У вас %d\n",igrok);printf("Еще карточку? (введите у или п) " ) ;otv = getchar();172C/C-i-'i' в задачах и примерах// Игрок нажимает две клавиши: с буквой и <Enter>// предыдущий вызов getchar читает букву.// При этом в буфере клавиатуры остается код// клавиши <Enter>.

Прочитаем его.int b;b = getchar();}} while (igrok <= 21 && comp <= 21 && otv != 'nM ;if (igrok = = 2 1 || (igrok < 21 && igrok > comp)I I comp > 21)printf("Bы выиграли!\n");elseprintf("Вы проиграли!\n");printf ("У вас %d\n", igrok);printf ("У компьютера %d\n", comp);printf("Для завершения нажмите <Enter>");getch();}// выдает карту из колодыint karta(){int i;doi = randO % 10 +2;while (koloda[i] == 0);koloda[i]—;return i ;Задача 205/ / Рисует олимпийский флаг#include <graphics.h>#include < s t d l i b . h >t i n c l u d e <stdio.h>#include <conio.h>Часть IL Решения173# d e f i n e PATHTODRIVER " с : W b o r l a n d c W b g i W "v o i d main (void){int gdriver = DETECT; // драйверint gmode;// режимint errorcode;// код ошибкиinitgraph(&gdriver, &gmode, PATHTODRIVER);errorcode = graphresult();if (errorcode != grOk)// ошибка инициализации// графического режима{printf("Ошибка: %d\n", errorcode);puts("Для завершения программы нажмите <Enter>");getch();exit(l);}// полотнище флага - сплошная заливка серым цветомsetfillstyle(SOLID_FILL,LIGHTGRAY); //bar(80,80,200,135);// кольцаsetcolor(GREEN);circle(100,100,15);setcolor (BLACK");circle(140,100,15);setcolor(RED);circle(180,100,15);setcolor(YELLOW);circle(120,115,15);setcolor(BLUE);circle(160,115,15);// зеленое// черное// красное// желтое// синееgetch();closegraph0; // выход из графического режима174C/C++ в задачах и примерахЗадача 208// Выводит корабль (с использованием метода базовой точки)#include <graphics.h>tinclude <stdlib.h>iinclude <stdio.h>tinclude <conio.h>#define dx#define dy1010// шаг сетки по X// шаг сетки по Yvoid ship(int x, int y) // x, у - координаты базовой точки{// корпусmoveto(х^у);lineto(х,y-2*dy);lineto(x+10*dx,y-2*dy);lineto(x+ll*dx,y~3*dy);lineto(x+17*dx,y-3*dy);lineto(x+14*dx,y);lineto(x,y);// надстройкаmoveto(x+3*dx,y-2*dy);lineto(x+4*dx,y-3*dy);lineto(x+4*dx,y~4*dy);lineto(x+13*dx,y-4*dy);lineto(x+13*dx,y-3*dy);line(x+5*dx,y~3*dy,x+9*dx,y-3*dy);// капитанский мостикrectangle (x-i-8*dx, y-4*dy, x+ll*dx, y-5*dy) ;// трубаrectangle(x+7*dx,y-4*dy,x+8*dx,y-7*dy);// иллкминаторыcircle {x+12*dx,y'-2*dy,dx/2) ;circle(x+14*dx,y-2*dy,dx/2);// мачтаline(x+10*dx,y-5*dy,x+10*dx,y-10*dy);// оснасткаmoveto(x+17*dx,y-3*dy);lineto(x+10*dx,y-10*dy);lineto (x, y-'2*dy) ;}Часть II.

Характеристики

Тип файла
PDF-файл
Размер
5,39 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее