Int found; // признак совпадения с образцом

int i;

printf("ХпПоиск в массиве методом перебораХп");

printf("Введите в одной строке %i целыхХп", НВ);

printf("чисел и нажмите <Enter>\n");

printf("->");

for (i = 0 ; i < НВ; i++)

scanf("%i", &m[i]);

printf("Введите образец для поиска (целое число)->");

scanf("%i", &obr);

// поиск простым перебором

found = 0;

i == 0; // проверяем с первого элемента массива

do {

if (m[i] == obr )

found = 1 ; // совпадение с образцом

else i++; // переход к следующему элементу

} while (!found && i < НВ);

If ( found )

printf("Совпадение с элементом номер %i", i+1);

Else

printf("Совпадений с образцом нет");

printf("\пДля завершения работы нажмите <Enter>");

getch();

}

10. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом.

11. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом.

12. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом.

Ответ:

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

// шестнадцатеричным числом

#include <stdio.h>

#include <conio.h>

#include "string.h"

Void mainO

{

char St[20]; // строка

Int i; // номер проверяемого символа

printf("ХпВведите шестнадцатеричное число ->");

scanf("%s", &st);

Strupr(st); // преобразуем к верхнему регистру

i = 0;

while ((st[i] >- 'О* && st[i] <= '9') I I

(st[i] >= 'A' && st[i] <= 'F'))

i++;

printf("Строка " );

// если st[i] != 'ХОЧ

// то i - номер первого ошибочного символа

if ( st[i] )

printf("не " );

printf ("является шестнадцатеричным числомЛп");

printf("ХпДля завершения нажмите <Enter>");

getch();

}

13. Написать функцию, которая сравнивает два целых числа и возвращает результат сравнения в виде одного из знаков: >, < или =. (187)

Ответ:

// Функция compare возвращает результат сравнения чисел

//в виде символа отношения

#include "stdio.h"

#include "conio.h"

char compare(int a, int b)

{

char res;

if (a > b) res = '>';

else if (a < b) res = *<';

else res = *=';

return(res);

}

Void mainO

{

Int xl,x2; // сравниваемые числа

Cheu: res; // результат сравнения

puts("Введите два целых числа и нажмите <Enter>");

printf("->");

scanf("%i%i", &xl, &x2);

res = compare(xl,x2); // вызов функции программиста

printf("%i %c %i\n", xl, res, x2);

puts("\nДля завершения работы программы \

нажмите <Enter>");

getch();

}

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

(-)

15. Напишите программу, которая дописывает в файл D:\numbers.txt пять введенных пользователем целых чисел. Убедитесь при помощи редактора текста, что в файле находятся новые числа.

// laba3.cpp: определяет точку входа для консольного приложения.

//

#include "stdafx.h"

#include "iostream"

#include <conio.h>

#define FNAME "d:\\sgibnev\\phones.txt\0" // имя файла

// дописывает в находящийся на диске D: файл

//целые числа, введенные пользователем

using namespace std;

int _tmain()

{

char fname [50] = FNAME;

FILE *f; // файл чисел

Char n;// число

puts("\n Adding the new nomber to the book \n");

//открыть файл в режиме добавленмя (a) текста (t)

//если файла с таким именем нет, то он будет создан

if ((f=fopen(fname, "at")) == NULL)

{

printf("Error in file open operation! \n");

getch();

return 0;

}

// получим данные от пользователя

int i;

for(i=0;i<5;i++){

printf("4islo ->");

scanf("%s", &n);

// и запишим их в файл

fprintf(f,"%c\n", n);}

puts("\n Data were added.");

Fclose(f); // закрытие файла

// открытие для чтения

if ((f = fopen(fname, "rt")) == NULL)

{

printf("Error in file open operation! %c \n", fname);

getch();

return 0;

}

printf("\nContent of file is following: \n");

while (!feof(f))

{

fscanf(f,"%c \n", &n );

printf("%c \n", n);

}

Fclose(f); // Закрытие фала

printf("\n Press enter for finish <Enter>\n");

getch();

return 0;

}

16. Напишите программу, которая на сменном диске компьютера (диск D:) создает файл numbers.txt и записывает в него 5 введенных пользователем целых чисел. Просмотрите при помощи редактора текста, например, встроенного в Norton Commander, созданный файл. Убедитесь, что каждое число находится в отдельной строке.

Смотреть 15 ответ

Неуверен что правильно но… =)

17. Создать класс Fraction для работы с дробными числами. Число должно быть представлено двумя полями: целая часть — длинное целое со знаком, дробная часть — беззнаковое короткое целое. Реализовать методы инициализации, считывания у пользователя, вывода на экран информации о точке, реализовать арифметические операции сложения, вычитания, сравнения.

(Смотреть последний вопрос)

18. Реализовать тип данных с помощью структуры-пары (с двумя полями first и second), в которой есть методы: метод инициализации Init, ввод с клавиатуры Read, вывод на экран Display. Реализовать внешнюю функцию с именем make_тип(), где тип — тип реализуемой структуры. Функция должна получать в качестве аргументов значения для полей структуры и возвращать структуру требуемого типа.
Поле first — дробное число, левая граница диапазона; поле second — дробное число, правая граница диапазона. Реализовать метод rangecheck() — проверку заданного числа на принадлежность диапазону

#include <cstdio>

#include <cstdlib>

#include <iostream>

#include <math.h>

using namespacestd;

structjak

{ floatfirst;

floatsecond;

voidInit()

{first=0;

second=0;

}

voidRead(floata,floatb)

{first=a;

second=b;

}

voidDisplay()

{cout<<"Diapozon ["<<first<<";"<<second<<"]";

}

voidrangechekc(floatx)

{ if(x>=first&&x<=second)

{ cout<<" X prinadlegit";

}

Else

{cout<<" X ne prinadlegit";

}

}

};

jak make(floata,floatb)

{ jak f;

f.Read(a,b);

returnf;

}

.

19. Реализовать тип данных с помощью структуры-пары (с двумя полями first и second), в которой есть методы: метод инициализации Init, ввод с клавиатуры Read, вывод на экран Display. Реализовать внешнюю функцию с именем make_тип(), где тип — тип реализуемой структуры. Функция должна получать в качестве аргументов значения для полей структуры и возвращать структуру требуемого типа.
Поле first — дробное число, левая граница диапазона; поле second — дробное число, правая граница диапазона. Реализовать метод rangecheck() — проверку заданного числа на принадлежность диапазону

#include <cstdio>

#include <cstdlib>

#include <iostream>

#include <math.h>

using namespacestd;

structjak

{ floatfirst;

floatsecond;

voidInit()

{first=0;

second=0;

}

voidRead(floata,floatb)

{first=a;

second=b;

}

voidDisplay()

{cout<<"Diapozon ["<<first<<";"<<second<<"]";

}

voidrangechekc(floatx)

{ if(x>=first&&x<=second)

{ cout<<" X prinadlegit";

}

Else

{cout<<" X ne prinadlegit";

}

}

};

jak make(floata,floatb)

{ jak f;

f.Read(a,b);

returnf;

}

20. Реализовать тип данных с помощью структуры-пары (с двумя полями first и second), в которой есть методы: метод инициализации Init, ввод с клавиатуры Read, вывод на экран Display. Реализовать внешнюю функцию с именем make_тип(), где тип — тип реализуемой структуры. Функция должна получать в качестве аргументов значения для полей структуры и возвращать структуру требуемого типа.
Поле first — дробное число, левая граница диапазона; поле second — дробное число, правая граница диапазона. Реализовать метод rangecheck() — проверку заданного числа на принадлежность диапазону.

#include <cstdio>

#include <cstdlib>

#include <iostream>

#include <math.h>

using namespacestd;

structjak

{ floatfirst;

floatsecond;

voidInit()

{first=0;

second=0;

}

voidRead(floata,floatb)

{first=a;

second=b;

}

voidDisplay()

{cout<<"Diapozon ["<<first<<";"<<second<<"]";

}

voidrangechekc(floatx)

{ if(x>=first&&x<=second)

{ cout<<" X prinadlegit";

}

Else

{cout<<" X ne prinadlegit";

}

}

};

jak make(floata,floatb)

{ jak f;

f.Read(a,b);

returnf;

}

21. Создать класс Point для работы с точками на плоскости. Координаты точки — декартовы. Реализовать методы инициализации, считывания у пользователя, вывода на экран информации о точке, метод определение расстояния до начала координат, расстояния между двумя точками.

#include <cstdio>

#include <cstdlib>

#include <iostream>

#include <math.h>

using namespacestd;

classPoint

{ public:

Point()

{

x=0;

y=0;

}

voidReadUSER(floata,floatb)

{ x=a;

y=b;

}

voidDisplay()

{cout<<"Koordinata x:"<<x<<" Koordinata y:"<<y;

}

voidTurnofX(floata)

{x+=a;

}

voidTurnofY(floatb)

{

y+=b;

}

static floatRass(Point a,Point b)

{ floatrass1;

floatrass;

floatrass2;

rass1=pow((a.x-b.x),2);

rass2=pow((a.y-b.y),2);

rass=pow(rass1+rass2,0.5);

returnrass;

}

floatRassko()

{floatrass;

rass=pow((x*x+y*y),0.5);

returnrass;

}

protected:

floatx;

floaty;

}

22. Создать класс Point для работы с точками на плоскости. Координаты точки — декартовы. Реализовать методы инициализации, считывания у пользователя, вывода на экран информации о точке, перемещение точки по оси X, перемещение по оси У, сравнение на совпадение и несовпадение,

#include <cstdio>

#include <cstdlib>

#include <iostream>

using namespacestd;

classPoint

{ public:

Point()

{

x=0;

y=0;

}

voidReadUSER(floata,floatb)

{ x=a;

y=b;

}

voidDisplay()

{cout<<"Koordinata x:"<<x<<" Koordinata y:"<<y;

}

voidTurnofX(floata)

{x+=a;

}

voidTurnofY(floatb)

{

y+=b;

}

static voidSovpad(Point a,Point b)

{if(a.x==b.x&&a.y==b.y)

{cout<<"Sovpadayt";

}

Else

{cout<<"Ne sovpadayt";

}

}

protected:

floatx;

floaty;

};

23. Создать класс Fraction для работы с дробными числами. Число должно быть представлено двумя полями: целая часть — длинное целое со знаком, дробная часть — беззнаковое короткое целое. Реализовать методы инициализации, считывания у пользователя, вывода на экран информации о точке, реализовать арифметические операции сложения, вычитания, сравнения.

#include <cstdio>

#include <cstdlib>

#include <iostream>

using namespacestd;

classFraction

{ protected:

longfirst;

unsigned shortsecond;

public:

Fraction()

{first=0;

second=0;

}

voidRead(longa,unsigned shortb)

{first=a;

second=b;

}

voidDisplay()

{cout<<"Chislo:"<<first<<"."<<second;

}

static voidSumma(Fraction d,Fraction e)

{ cout<<"Summa:"<<d.first+e.first<<"."<<d.second+e.second;

}

static voidRaz(Fraction d,Fraction e)

{ cout<<"Summa:"<<d.first-e.first<<"."<<d.second-e.second;

}

static voidSrav(Fraction d,Fraction e)

{ if(d.first==e.first&&d.second==e.second)

{ cout<<"Ravny";

}

Else

{if((d.first-e.first)>0)

{cout<<">";}

Else

{cout<<"<";

}}}}

Наши рекомендации