`); let searchUrl = `/search/`; history.forEach((elem) => { prevsearch.find('#prevsearch-options').append(`
${elem} `); }); } $('#search-pretype-options').empty(); $('#search-pretype-options').append(prevsearch); let prevbooks = $(false); [ {title:"Recently Opened Textbooks", books:previous_books}, {title:"Recommended Textbooks", books:recommended_books} ].forEach((book_segment) => { if (Array.isArray(book_segment.books) && book_segment.books.length>0 && nsegments<2) { nsegments+=1; prevbooks = $(`
${book_segment.title} `); let searchUrl = "/books/xxx/"; book_segment.books.forEach((elem) => { prevbooks.find('#prevbooks-options'+nsegments.toString()).append(`
${elem.title} ${ordinal(elem.edition)} ${elem.author} `); }); } $('#search-pretype-options').append(prevbooks); }); } function anon_pretype() { let prebooks = null; try { prebooks = JSON.parse(localStorage.getItem('PRETYPE_BOOKS_ANON')); }catch(e) {} if ('previous_books' in prebooks && 'recommended_books' in prebooks) { previous_books = prebooks.previous_books; recommended_books = prebooks.recommended_books; if (typeof PREVBOOKS !== 'undefined' && Array.isArray(PREVBOOKS)) { new_prevbooks = PREVBOOKS; previous_books.forEach(elem => { for (let i = 0; i < new_prevbooks.length; i++) { if (elem.id == new_prevbooks[i].id) { return; } } new_prevbooks.push(elem); }); new_prevbooks = new_prevbooks.slice(0,3); previous_books = new_prevbooks; } if (typeof RECBOOKS !== 'undefined' && Array.isArray(RECBOOKS)) { new_recbooks = RECBOOKS; for (let j = 0; j < new_recbooks.length; j++) { new_recbooks[j].viewed_at = new Date(); } let insert = true; for (let i=0; i < recommended_books.length; i++){ for (let j = 0; j < new_recbooks.length; j++) { if (recommended_books[i].id == new_recbooks[j].id) { insert = false; } } if (insert){ new_recbooks.push(recommended_books[i]); } } new_recbooks.sort((a,b)=>{ adate = new Date(2000, 0, 1); bdate = new Date(2000, 0, 1); if ('viewed_at' in a) {adate = new Date(a.viewed_at);} if ('viewed_at' in b) {bdate = new Date(b.viewed_at);} // 100000000: instead of just erasing the suggestions from previous week, // we just move them to the back of the queue acurweek = ((new Date()).getDate()-adate.getDate()>7)?0:100000000; bcurweek = ((new Date()).getDate()-bdate.getDate()>7)?0:100000000; aviews = 0; bviews = 0; if ('views' in a) {aviews = acurweek+a.views;} if ('views' in b) {bviews = bcurweek+b.views;} return bviews - aviews; }); new_recbooks = new_recbooks.slice(0,3); recommended_books = new_recbooks; } localStorage.setItem('PRETYPE_BOOKS_ANON', JSON.stringify({ previous_books: previous_books, recommended_books: recommended_books })); build_popup(); } } var whiletyping_search_object = null; var whiletyping_search = { books: [], curriculum: [], topics: [] } var single_whiletyping_ajax_promise = null; var whiletyping_database_initial_burst = 0; //number of consecutive calls, after 3 we start the 1 per 5 min calls function get_whiletyping_database() { //gets the database from the server. // 1. by validating against a local database value we confirm that the framework is working and // reduce the ammount of continuous calls produced by errors to 1 per 5 minutes. return localforage.getItem('whiletyping_last_attempt').then(function(value) { if ( value==null || (new Date()) - (new Date(value)) > 1000*60*5 || (whiletyping_database_initial_burst < 3) ) { localforage.setItem('whiletyping_last_attempt', (new Date()).getTime()); // 2. Make an ajax call to the server and get the search database. let databaseUrl = `/search/whiletype_database/`; let resp = single_whiletyping_ajax_promise; if (resp === null) { whiletyping_database_initial_burst = whiletyping_database_initial_burst + 1; single_whiletyping_ajax_promise = resp = new Promise((resolve, reject) => { $.ajax({ url: databaseUrl, type: 'POST', data:{csrfmiddlewaretoken: "QR7HWRSvkig8Gk1rt2NuYyoVZL8SHSaTnIb6wbW3zc4cyKBlKN0NDFwTTz2PB5D5"}, success: function (data) { // 3. verify that the elements of the database exist and are arrays if ( ('books' in data) && ('curriculum' in data) && ('topics' in data) && Array.isArray(data.books) && Array.isArray(data.curriculum) && Array.isArray(data.topics)) { localforage.setItem('whiletyping_last_success', (new Date()).getTime()); localforage.setItem('whiletyping_database', data); resolve(data); } }, error: function (error) { console.log(error); resolve(null); }, complete: function (data) { single_whiletyping_ajax_promise = null; } }) }); } return resp; } return Promise.resolve(null); }).catch(function(err) { console.log(err); return Promise.resolve(null); }); } function get_whiletyping_search_object() { // gets the fuse objects that will be in charge of the search if (whiletyping_search_object){ return Promise.resolve(whiletyping_search_object); } database_promise = localforage.getItem('whiletyping_database').then(function(database) { return localforage.getItem('whiletyping_last_success').then(function(last_success) { if (database==null || (new Date()) - (new Date(last_success)) > 1000*60*60*24*30 || (new Date('2023-04-25T00:00:00')) - (new Date(last_success)) > 0) { // New database update return get_whiletyping_database().then(function(new_database) { if (new_database) { database = new_database; } return database; }); } else { return Promise.resolve(database); } }); }); return database_promise.then(function(database) { if (database) { const options = { isCaseSensitive: false, includeScore: true, shouldSort: true, // includeMatches: false, // findAllMatches: false, // minMatchCharLength: 1, // location: 0, threshold: 0.2, // distance: 100, // useExtendedSearch: false, ignoreLocation: true, // ignoreFieldNorm: false, // fieldNormWeight: 1, keys: [ "title" ] }; let curriculum_index={}; let topics_index={}; database.curriculum.forEach(c => curriculum_index[c.id]=c); database.topics.forEach(t => topics_index[t.id]=t); for (j=0; j
Solutions
Textbooks
`); } function build_solutions() { if (Array.isArray(solution_search_result)) { const viewAllHTML = userSubscribed ? `View All` : ''; var solutions_section = $(` Solutions ${viewAllHTML} `); let questionUrl = "/questions/xxx/"; let askUrl = "/ask/question/xxx/"; solution_search_result.forEach((elem) => { let url = ('course' in elem)?askUrl:questionUrl; let solution_type = ('course' in elem)?'ask':'question'; let subtitle = ('course' in elem)?(elem.course??""):(elem.book ?? "")+" "+(elem.chapter?"Chapter "+elem.chapter:""); solutions_section.find('#whiletyping-solutions').append(` ${elem.text} ${subtitle} `); }); $('#search-solution-options').empty(); if (Array.isArray(solution_search_result) && solution_search_result.length>0){ $('#search-solution-options').append(solutions_section); } MathJax.typesetPromise([document.getElementById('search-solution-options')]); } } function build_textbooks() { $('#search-pretype-options').empty(); $('#search-pretype-options').append($('#search-solution-options').html()); if (Array.isArray(textbook_search_result)) { var books_section = $(` Textbooks View All `); let searchUrl = "/books/xxx/"; textbook_search_result.forEach((elem) => { books_section.find('#whiletyping-books').append(` ${elem.title} ${ordinal(elem.edition)} ${elem.author} `); }); } if (Array.isArray(textbook_search_result) && textbook_search_result.length>0){ $('#search-pretype-options').append(books_section); } } function build_popup(first_time = false) { if ($('#search-text').val()=='') { build_pretype(); } else { solution_and_textbook_search(); } } var search_text_out = true; var search_popup_out = true; const is_login = false; const user_hash = null; function pretype_setup() { $('#search-text').focusin(function() { $('#search-popup').addClass('show'); resize_popup(); search_text_out = false; }); $( window ).resize(function() { resize_popup(); }); $('#search-text').focusout(() => { search_text_out = true; if (search_text_out && search_popup_out) { $('#search-popup').removeClass('show'); } }); $('#search-popup').mouseenter(() => { search_popup_out = false; }); $('#search-popup').mouseleave(() => { search_popup_out = true; if (search_text_out && search_popup_out) { $('#search-popup').removeClass('show'); } }); $('#search-text').on("keyup", delay(() => { build_popup(); }, 200)); build_popup(true); let prevbookUrl = `/search/pretype_books/`; let prebooks = null; try { prebooks = JSON.parse(localStorage.getItem('PRETYPE_BOOKS_'+(is_login?user_hash:'ANON'))); }catch(e) {} if (prebooks && 'previous_books' in prebooks && 'recommended_books' in prebooks) { if (is_login) { previous_books = prebooks.previous_books; recommended_books = prebooks.recommended_books; if (prebooks.time && new Date().getTime()-prebooks.time<1000*60*60*6) { build_popup(); return; } } else { anon_pretype(); return; } } $.ajax({ url: prevbookUrl, method: 'POST', data:{csrfmiddlewaretoken: "QR7HWRSvkig8Gk1rt2NuYyoVZL8SHSaTnIb6wbW3zc4cyKBlKN0NDFwTTz2PB5D5"}, success: function(response){ previous_books = response.previous_books; recommended_books = response.recommended_books; if (is_login) { localStorage.setItem('PRETYPE_BOOKS_'+user_hash, JSON.stringify({ previous_books: previous_books, recommended_books: recommended_books, time: new Date().getTime() })); } build_popup(); }, error: function(response){ console.log(response); } }); } $( document ).ready(pretype_setup); $( document ).ready(function(){ $('#search-popup').on('click', '.search-view-item', function(e) { e.preventDefault(); let autoCompleteSearchViewUrl = `/search/autocomplete_search_view/`; let objectUrl = $(this).attr('href'); let selectedId = $(this).data('objid'); let searchResults = []; $("#whiletyping-solutions").find("a").each(function() { let is_selected = selectedId === $(this).data('objid'); searchResults.push({ objectId: $(this).data('objid'), contentType: $(this).data('contenttype'), category: $(this).data('category'), selected: is_selected }); }); $("#whiletyping-books").find("a").each(function() { let is_selected = selectedId === $(this).data('objid'); searchResults.push({ objectId: $(this).data('objid'), contentType: $(this).data('contenttype'), category: $(this).data('category'), selected: is_selected }); }); $.ajax({ url: autoCompleteSearchViewUrl, method: 'POST', data:{ csrfmiddlewaretoken: "QR7HWRSvkig8Gk1rt2NuYyoVZL8SHSaTnIb6wbW3zc4cyKBlKN0NDFwTTz2PB5D5", query: $('#search-text').val(), searchObjects: JSON.stringify(searchResults) }, dataType: 'json', complete: function(data){ window.location.href = objectUrl; } }); }); });
FAQs
Q.1: If each interior angle is equal to 144°, then how many sides does a regular polygon have? Hence, the polygon has 10 sides.
What is the measure of each interior angle of a regular polygon 18-gon? ›
The formula for finding the measure of interior angles on a regular polygon is ((n-2) * 180) / n where n is the number of sides of the polygon. In this case, we have an 18-gon, so our n value is 18. So our interior angles must have a measure of 160 degrees.
How to prove the sum of interior angles is n = 2 180? ›
We know that the sum of the interior angles of a regular polygon with 'n' sides = 180 (n-2). The interior and exterior angle at each vertex form a linear pair. Therefore, there will be 'n' linear pairs in the polygon. Now, since each linear pair sums upto 180°, the sum of all linear pairs will be: 180n°.
How many sides does a regular polygon have if the interior angle is 162 degrees? ›
The number of sides of a regular polygon, if each of its interior angles is 162° is 20.
How many sides does a regular polygon have if each interior angle measures 160? ›
Summary: The number of sides in a regular polygon, if its interior angle is(i) 160° is 18, (ii) 150° is 12.
What is regular polygon measure of interior angle? ›
Let's recap. A regular polygon is a flat shape whose sides are all equal and whose angles are all equal. The formula for finding the sum of the measure of the interior angles is (n - 2) * 180. To find the measure of one interior angle, we take that formula and divide by the number of sides n: (n - 2) * 180 / n.
What shape has 100000000 sides? ›
A regular megagon is represented by the Schläfli symbol {1,000,000} and can be constructed as a truncated 500,000-gon, t{500,000}, a twice-truncated 250,000-gon, tt{250,000}, a thrice-truncated 125,000-gon, ttt{125,000}, or a four-fold-truncated 62,500-gon, tttt{62,500}, a five-fold-truncated 31,250-gon, ttttt{31,250}, ...
What is the measure of its every interior angle of a regular polygon with 18 sides? ›
The formula that gives the measure of the interior angle of a regular polygon is: (n-2)*180/n, where n is the number of sides. The measure of one angle of the regular polygon whose number of sides is 18, is of 160 degrees.
How to find the sum of angles in an n-sided polygon? ›
To find the interior angle sum of a polygon, we can use a formula: interior angle sum = (n - 2) x 180°, where n is the number of sides.
How to calculate interior angles in a polygon? ›
The formula for calculating the sum of interior angles is ( n − 2 ) × 180 ∘ where is the number of sides. All the interior angles in a regular polygon are equal. The formula for calculating the size of an interior angle is: interior angle of a polygon = sum of interior angles ÷ number of sides.
A triangle has a sum of 180 degrees of interior angles and an n-sided polygon can only be divided into (n-2) non-overlapping triangles. Hence the total sum of interior angles is 180(n-2) degrees.
How many sides does a regular polygon have if each interior angle measures 179? ›
All interior angles of any regular polygon are equal. Thus, sum of all interior angles of this n-sided regular polygon = (179 * n)°. Or, n = 360. Therefore, this regular polygon has 360 sides.
How many sides does a regular polygon have if each interior angle measures 120°? ›
Answer: If an interior angle of a regular polygon measures 120°, it has 6 sides (Hexagon).
How many sides does a regular polygon have if each of an interior angle is 165 degree? ›
Hence, the exterior grade of regular polygons will be summed at 360 degrees. Thus, the sum of the number of the sides will be calculated as =360\15 = 24. A regular polygon will have 24 sides if it has an interior angle of 165 degrees.
How many sides does a regular polygon have if each interior angle measures 140? ›
We know a single angle of this regular polygon is 140° . Therefore all the angles are 140° . We can write the sum of the interior angles as 140 multiplied by the number of sides or 140n . The polygon has 9 sides.
How many sides does a regular polygon have if each interior angle measures 108? ›
An interior angle of a regular polygon has a measure of 108°. It is a 5 sided polygon known as pentagon.
How many sides does a regular polygon have if each interior angle measures 150? ›
Answer and Explanation:
If each angle of a regular polygon measures 150°, then the polygon has 12 sides.