0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 39
1

Задача на массив и поиск числа

16.10.2013, 12:21. Показов 565. Ответов 2
Метки нет (Все метки)

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

Добавлено через 12 часов 22 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream.h>
const int n=3;
  int i,j;
  double A[n][n];
void main()
{
    srand((unsigned)time(NULL));
    for (i=0; i<n; i++)
      for (j=0; j<n; j++)
          A[i][j]=rand()% 20000 -100;
      FILE*f;
      char fname[]="C:\\\\data.txt\0";
      f=fopen(fname, "w");
      for (i=0; i<n; i++)
          for (j=0; j<n; j++)
      fprintf(f,"%.0f\n",A[i][j]);
      fclose(f);
      cout<<"File is saved to disk C"<<endl;
}
Вот что есть у меня, помогите доделать пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2013, 12:21
Ответы с готовыми решениями:

Задача на поиск числа
Ввести 4 числа. Найти число в котором количество различных цифр минимально.

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

Задача на поиск минимального\максимального числа
Здравствуйте. Начал учить с++ относительно недавно. Решал задачу на поиск максимального и...

Задача на поиск числа среди введеных
Вводим числа k,l,m - среди этих чисел вводятся два одинаковых, а третье является отличным от них....

2
zzzZZZ...
527 / 358 / 94
Регистрация: 11.09.2013
Сообщений: 2,041
16.10.2013, 14:15 2

Не по теме:

с тебя мне на пиво))


вот, как всегда комменты не пишу, разбирайся)
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//by kot
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <iomanip>
#include <fstream>
 
using namespace std;
 
int mod(int x,int y)
{
    int s=1;
    for(int i=1;i<=y;i++)
    s*=x;
return s;
}
void setFile(int sizeX,int sizeY)
{
cout<<"Created file \"text.txt\""<<endl;
ofstream file;
file.open("text.txt");
int* *b=new int*[sizeY];
 
    for (int y=0;y<sizeY;y++)
    {
    int* a=new int[sizeX];
        for(int x=0;x<sizeX;x++)
        {
        a[x]=1+rand()% 20000;
        }
    b[y]=&a[0];
    }
 
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        file<<setw(5)<<*(b[y]+x)<<" ";
    file<<"\n";
    }
    cout<<endl;
    file.close();
}
 
 
void readFile(int* b[],int sizeY, int sizeX)
{
ifstream file;
file.open("text.txt");
cout<<endl;
cout<<endl;
        for(int y=0;y<sizeY;y++)
        {
            int* a=new int[sizeX];
            for(int x=0;x<sizeX;x++)
            {
                file>>a[x];
            }
        b[y]=&a[0];
        }
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
}
 
void find(int* b[],int sizeX,int sizeY,int value)
{
cout<<"valie is :"<<value<<endl;
int c=0;
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
cout<<"\n\n";
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        {
            for (int counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
 
                c++;
                }
        }
    }
 
    if (c==0)
    cout<<"Sorry , but value = "<<value<<" haven't result :-("<<endl;
cout<<"number of answers: "<<c<<endl;
int *arrayValue=new int[c];
c=0;
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        {
            for (int counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
                cout<< *(b[y]+x)<<" \n";
                arrayValue[c]=*(b[y]+x);
                c++;
                }
        }
    }
 
ofstream file2;
file2.open("result.txt");
cout<<"Created file:\"result.txt\""<<endl;
    for (int y=0;y<c;y++)
    {
    file2<<arrayValue[y]<<" ";
    }
 
}
 
 
int main()
{
srand(time(0));
int sizeX,sizeY,value;
cout<<"Enter size x:";
cin>>sizeX;
cout<<"Enter size Y:";
cin>>sizeY;
int* *b=new int*[sizeY];
 
cout<<"\nfunction setFile:";
setFile(sizeX,sizeY);
cout<<"\nfunction read";
readFile(b,sizeY, sizeX);
 
cout<<"\Please enter find value:";
cin>>value;
cout<<"\nfunction find:\n";
find(b,sizeX,sizeY,value);
 
delete[]b;
return 0;
}
1
90 / 90 / 17
Регистрация: 26.10.2012
Сообщений: 249
16.10.2013, 15:23 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <ctime>
 
int main(int argc, char* argv[])
{
    srand(time(NULL));
    int select,tempint;
    std::ofstream outFile;
    std::ifstream inpFile;
    char digit,temp[10];
        
    std::cout<<"Select operation:\n"
    <<"1 - Read from file\n"
    <<"2 - Generate random\n";
    std::cin>>select;
    
    switch (select)
    {
    case 1:
    {
        inpFile.open(argv[1]);
        break;
    }
    case 2:
    {
        outFile.open(argv[1]);        
 
        if (outFile.fail())          
        {
            rename(tmpnam(NULL),argv[1]);
            outFile.open(argv[1]);      
        }
          
        int quant;            
        std::cout<<"Kolichestvo chisel:\n";
        std::cin>>quant;
        for (int i=0;i<quant;++i)
        {
            int num1=rand();
            outFile << num1 <<" "; 
        }
        outFile.close();
        inpFile.open(argv[1]);
        break;
    }    
    }
    std::cout<<"Enter digit:\n";
    std::cin>>digit;
    
    std::cout<<"Save result into:\n"
    <<"1 - Screen\n"
    <<"2 - File\n";
    std::cin>>select;
    switch (select)
    {
    case 1:
    {
        while(inpFile>>tempint)
        {
            sprintf(temp,"%d",tempint);
            if(temp[0]==digit) std::cout<<temp<<" ";
        } 
        break;       
    }
    case 2:
    {
        outFile.open(argv[2]);      
        while(inpFile>>tempint)
        {
            sprintf(temp,"%d",tempint);
            if(temp[0]==digit) outFile<<temp<<" ";
        }
        outFile.close();
        break;
    }
    }
        
    return 0;
}
В качестве аргументов программа принимает входящий и исходящий файлы. Например
Код
project1 "D:\input.txt" "D:\output.txt"
pause
1
16.10.2013, 15:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2013, 15:23
Помогаю со студенческими работами здесь

Задача на поиск ближайшего меньшего Палиндрома от long числа
Тема стала модной!?:D Народ, кому не лень, прошу протестить задачу на предмет ошибок в ответе, ...

Задача: массив, фильтр, выбор среднего числа
Добрый день. Помогите пожалуйста решить задачу: дается массив, в нем рост игроков (20 шт) в см....

Двумерный массив, поиск заданного числа
Ячейки массива отсортированы по возрастанию, при этом используется порядок расположения элементов...

2 задания: поиск числа с мах количеством делителей и одномерный массив
Привет всем!!!! Помогите написать коды 2-х программ!!! Задание1: На заданном интервале найти...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru