0 / 0 / 0 Регистрация: 14.02.2020 Сообщений: 11 |
|
1 |
|
Найти количество двухзначных чисел в строке.01.03.2020, 19:19. Показов 1640. Ответов 2
Дан массив символьных строк. Найти количество двухзачных чисел. Числа в строках лежат в пределах от -10000 до 10000. Формат ввода: В первой строке – количество элементов массива не превосходящее 100. На второй и последующих строках элементы массива. Формат вывода: Целое число. Пример входных данных 3 1
0 |
ValentinNemo 2373 / 775 / 561 Регистрация: 15.01.2019 Сообщений: 2,394 |
||||
02.03.2020, 03:51 |
2 |
|||
Программа получилась не изящная.
0 |
Cyborg Drone Модератор 9584 / 4905 / 3243 Регистрация: 17.08.2012 Сообщений: 15,328 |
||||||||
05.03.2020, 22:13 |
3 |
|||||||
Программа получилась не изящная.
Добавлено через 14 минут
0 |
Программа должна находить в строках двузначные числа, и считать количество таких строк
примеры строк:
- shsjkdfjsfeoi43jlskd
- lkfjsd234kjiel
- jwernmoa43skj3
- jklwen34kje
соответственно таких строки три (1,3,4)
Я начал писать, но оно не работает даже для одной строки, как сделать правильно?
#include <string>
#include <iostream>
int main()
{
using namespace std;
string strSample("thisfuckingshitstring45");
cout << "The string:" << endl;
cout << strSample << endl << endl;
int j;
//searching substring
string Num[90] = { "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" };
for (j = 0; j < 90; ++j)
{
size_t charPos = strSample.find(Num[j], 0);
}
//chekcing search result
//if (charPos != string::npos)
//cout << "First instance of "<< Num[j] << " was found at position " << charPos;
//else cout << "Substring not found." << endl;
//cout << endl << endl;
//cout << "loc all substing inc "<< Num[j] << endl;
size_t SubstingPos = strSample.find(Num[j], 0);
while (SubstingPos != string::npos)
{
for (j = 0; j < 89; ++j){
cout << Num[j]<<" found at pos" << SubstingPos << endl;
size_t nSearchPosition = SubstingPos + 1;
SubstingPos = strSample.find(Num[j], nSearchPosition);
}
}
cout << endl;
return 0;
Asked
3 years, 2 months ago
Viewed
476 times
I need to count the number of lines in any data file I input. The file can be any .txt file with a two-digit number on each line.
How can I make this work with any data file, not just one specific one? How do I convert the file into a string and then store it in a variable? And does this mean I just have to count the number of lines in the file?
#to open the file
file = input('Please enter the file name: ')
file = open(file, 'r')
#to display name of the assignment
for assignment in file:
print('Results for', assignment)
break
asked Feb 24, 2020 at 14:17
4
To count lines in file do:
with open(file) as f:
print(len(f.readlines()))
readlines
will read file into a list of lines, len
will get length of that list and finally print
will print it out
But it is a naive solution with memory consumption O(n)
where n is count of lines in file.
Better do that:
i = 0
with open(file) as f:
for line in f:
i += 1
answered Feb 24, 2020 at 14:20
2
count = 0
with open(file) as tests:
for curline in tests: #for each line
count+=1 #add int of line to total
print(count)
this is untested but something like this may work? looping through each line
converting it to an integer and appending a total
file must be the path to your file or the filename if its in the same directory as your python file. must be a string such as “testfile.txt” or “./files/myfile.txt”
if you are summing then change count to
count+=int(curline)
answered Feb 24, 2020 at 14:20
1
fghjgtsghf fdrjhs
Ученик
(95),
закрыт
7 лет назад
Ввести строку и найти среднее арифметическое всех двузначных чисел в строке / pascal
Помогите пожалуйста написать программу!
Алексей Корсунов
Гуру
(3113)
7 лет назад
Program DoSs;
var
k,s,i:integer;
n:real;
a:array[1..15] of integer;
Begin
for i:=1 to 15 do
begin
a[i] := random(1000);
write(a[i], ‘ ; ‘);
end;
for i:=1 to 15 do
if (a[i]>99) and (a[i]<999) then begin
k:=k+1;
s:=s+a[i];
end;
n:=s/k;
writeln(‘Среднееарифметичесоке двузначных чисел ‘,n);
end.
Формулировка задачи:
Дан массив вещественных чисел A, содержащий N элементов. Подсчитать
указанное значение для определенных элементов массива: количество двузначных чисел.
Примечание. Количество элементов N необходимо вводить с клавиатуры. Элементы мас-
сива A[i] необходимо сгенерировать в диапазоне от -15 до 15
Код к задаче: «Подсчитать количество двузначных чисел»
textual
Random rnd = new Random(); int[] arr = new int[10]; for (int i = 0; i < arr.Length; i++) arr[i] = rnd.Next(-15, 16); int count = arr.Where(x => (Math.Abs(x) >= 10 && x <= 99)).Count();
Полезно ли:
13 голосов , оценка 4.000 из 5