Форум программистов, компьютерный форум CyberForum.ru

Используя прототип функции написать программы - C++

Восстановить пароль Регистрация
 
FallenAngel76ru
22 / 22 / 10
Регистрация: 11.03.2012
Сообщений: 175
21.05.2012, 18:13     Используя прототип функции написать программы #1
Сделал всё обычным способом, в Dev C++, обычные программы..но теперь требуется написать те же программы, только используя прототип функций..Сами программы прилагаю к каждому заданию..
1) для нахождения максимального элемента в одномерном массиве, состоящим из n вещественных элементов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <cstdlib>
#include <iostream>
#include <math.h>
 
using namespace std;
 
float imax;
 
int main(int argc, char *argv[])
{
    int n;
    
    cout<<"Vvedite kolichestvo elementov:"; cin>>n;   
    float*x = new float[n];
    
    int i;
    for (i=0; i<n; i++)
    {
        cout<<"Vvod elementa "; cin>>x[i];
    }
    
    imax = x[0];
    for (int i=1; i<n; i++)
    {
        if (x[i]>imax)
        {
                      imax = x[i];
        }
        }
                      
    printf ("max: %-0.1f \n", imax);
    system("PAUSE");
    return EXIT_SUCCESS;
}

2) для нахождения суммы элементов массива, расположенных до последнего положительного элемента в одномерном массиве из n вещественных элементов.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <cstdlib>
#include <iostream>
#include <math.h>
 
using namespace std;
 
 
int pospol, summ;
int n;
int main(int argc, char *argv[])
{
    cout<<"Vvedite kolichestvo elementov:"; cin>>n;   
    float*x = new float[n];
    
    for (int i=0; i<n; i++)
    {
        cout<<"Vvod elementa "; cin>>x[i];
    }
        
    for(int i=n; i>0; i-=1)
 {
 if (x[i] > 0)
 {
 pospol = i;
 break;
 }
 }
 
 for(int i=0; i<pospol-1; i++)
 {
 summ+=x[i];
 }
      cout<<"Summa: "<< summ<< "\n";
      
    
    system("PAUSE");
    return EXIT_SUCCESS;
}

3)Дана целочисленная квадратная матрица. Определить:
сумму элементов в тех столбцах, которые не содержат отрицательных эле¬ментов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
using namespace std;
//---------------------------------------------------------------------------
 
 
int main(int argc, char* argv[])
{
        int massiv[4][4];//матрица 4х4
        int n=4;//количество элементов в строке(дублируем,чтобы потом можно было менять налету)
        
        //заполнение матрицы
        for(int i=0;i<n;i++)
                for(int j=0;j<n;j++)
                        {
                                cout<<"Vvedite el-t matrix["<<i+1<<"]["<<j+1<<"] ";
                                cin>>massiv[i][j];
                        }
                        for(int i=0; i<n; i++){ //Красивый ее вывод
 for(int j=0;j<n; j++){
 cout<<massiv[i][j]<<"\t";
 }
 cout<<"\n";
 }
        //1)сумма элементов в тех столбцах, которые не содержат отрицательных э
        //лементов;
        for(int j=0;j<n;j++)
        { int sum=0;
          bool flag=true;
                for(int i=0;i<n;i++)
                        {
                                sum+=massiv[i][j];
                                if(massiv[i][j]<0)flag=false;
                        }
                if(flag==true)
                        {
                              cout<<"\n";
                                cout<<"Summa "<<j+1<<" stolbca = "<<sum;
                        }
                        cout<<"\n";
        }
        
system("PAUSE");
return(0);
}

4)Дана целочисленная квадратная матрица. Определить:
минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "iostream"
#include "math.h"
 
using namespace std;
 
int main(){
 const int n=4;
 int massiv[n][n];
 
for(int i=0;i<n;i++)
                for(int j=0;j<n;j++)
                        {
                                cout<<"Vvedite el-t matrix["<<i+1<<"]["<<j+1<<"] ";
                                cin>>massiv[i][j];
                        }
                        for(int i=0; i<n; i++){ //Вывод матрицы
 for(int j=0;j<n; j++){
 cout<<massiv[i][j]<<"\t";
 }
 cout<<"\n";
 }
 
 int min_sum=INT_MAX;
 int absum=0; //Сумма модулей
 int ind=0; //Индекс, который будет проверять праллельность побочной диагонали
 
while(ind<n){
 for(int i=0; i<n; i++)
 for(int j=0; j<n; j++)
 if ( (j+i)==ind )
 absum+=abs(massiv[i][j]);
 min_sum=(absum<min_sum)?absum:min_sum;
 absum=0;
 ind++;
 }
 
cout<<"\n"<<"min sum= "<<min_sum;
cout<<"\n";
system("PAUSE");
return 0;
}

5)Ввести с клавиатуры слово и символ. Если слово четной длины, то удалить все символы, стоящие на четных позициях, а если нечетной длины, то удалить все символы, стоящие на нечетных позициях. Присоединить введенный символ к концу слова. Вывести слово и символ.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "iostream"
#include "cstring"
 
using namespace std;
 
int main(){
 char *word=new char[25];//Создаем массив для вводимого слова
 char sign;//Вводимый символ
 
 cout<<"Enter the word and sign: \n";
 cin>>word>>sign;
 
 //Обработка слова
 if(strlen(word)%2){ //Если слово нечетной длины
 for(int i=0; i<strlen(word); i++) 
 strcpy(word+i, (word+i+1)); //то удаляем каждый нечетный символ
 }
 else{
 for(int i=1; i<strlen(word); i++) //иначе-удаляем каждый четный символ
 strcpy(word+i, (word+i+1));
 }
 
*(word+strlen(word))=sign; //В конец строки заносим введенный символ
 
cout<<word;
cout<<"\n";
 
delete [] word; //Освобождаем память, выделенную под слово
 
system("PAUSE");
return 0;
}

6)Написать программу, которая считывает с клавиатуры текст и выводит его на экран, меняя местами каждые два соседних слова.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "iostream"
#include "vector"
#include "string";
 
using namespace std;
 
int main(){
 vector<string> text; //Контейнер для текста
 string temp; //Вспомогательная переменная для ввода и обработки
 
 
 cout<<"Enter the text:\n";
 
while (cin>>temp) //Пока вводим текст... Для окончания ввода ставим энтер, потом жмём <ctr+z>, если винда и <ctr+r>, если линукс, а потом вновь энтер.
text.push_back(temp);//Добавляем введенное слово в контейнер
 
 //Обработка текста
 for (int i=0; i<text.size()-1; i+=2){
 temp=text[i];
 text[i]=text[i+1];
 text[i+1]=temp;
 }
 
 //Вывод изменного текста
 for (int i=0; i<text.size(); i++)
 cout<<text[i]<<" ";
 cout<<"\n";
system("PAUSE");
return 0;
}

7)оформить в виде функций законченные последовательности действий. Все необходимые данные для функций должны передаваться им в качестве параметров. Использование глобальных переменных в функциях не допускается. Это со структурами...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <cstdlib>
using namespace std;
const int n=8; //количество записей (размерность массива)
 
int main() //главная функция программы
{
   int w;
   setlocale(LC_ALL,"russian_russia"); //подключение русского языка
 
/*--------Создание структуры---------*/
   struct AeroFlot{
        char* destination; //пункт назначения
        char* tip; //тип самолёта
        int nom; //номер рейса
}; //определение массива с записями
     cout<<"Введите кол-во рейсов ";
     cin>>w;   
     AeroFlot *air = new AeroFlot [w];
     cout<<"Ожидается ввод данных"<<'\n'<<'\n';
 
/*--------заполнение массива---------*/
     for (int i=0; i<w; i++){
     cout<<"Номер рейса: ";
     cin>>air[i].nom;
     cout<<"Пункт назначения: ";
     char s[50];         
     cin>>s;  
 air[i].destination = new char[strlen(s)+1];
 strcpy(air[i].destination,s);
     cout<<"Тип самолёта: ";
 char t[50];       
     cin>>t; 
  air[i].tip = new char[strlen(t)+1];
 strcpy(air[i].tip,t);
     cout<<'\n';
} //for
 
/*-------диалог с пользователем-------*/
     char str[50]; //запрашиваемый пункт назначения
     cout<<"\n\nПоиск рейса "<<endl;
     cout<<"Введите тип самолёта: ";
     cin>>str; //ввод запроса
     
//-------цикл поиска совпадений-------//
     cout<<'\n'<<"Информация о рейсах:"<<'\n'<<'\n'; 
     bool flag2=false;
     for (int i=0; i<w; i++){
     if(!(strcmp(str,air[i].tip))){ 
         cout<<"Номер рейса: "<<air[i].nom<<'\n';
         cout<<"Пункт назначения: ";puts(air[i].destination);
         cout<<"Тип самолёта: ";puts(air[i].tip);
         flag2=true;
         cout<<"\n";
 } //if
} //for
if (!flag2) cout<<"Рейсов нет!"<<'\n'<<'\n';
getch();
system ("PAUSE");
return 0;
}
Выручайте, ребятки..надо ващ ппц как..Ибо мой моцк отрофировался после того, как сделал структуры..Да и как с прототипами делать не понимаю..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2012, 18:13     Используя прототип функции написать программы
Посмотрите здесь:

C++ написать прототип функции
C++ прототип функции
Прототип функции C++
C++ Используя прототип функции написать программу для нахождения максимального элемента
Функция n*(n+1). Написать прототип C++
C++ Написать программу используя функции
Написать программы используя строки в с++ C++
C++ Вычислить гипотенузы используя функцию, объявить прототип

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 06:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru